/*
	6F672F - brown gold
	ecc40d - bright gold
	
	040404 - dull, reddish black
	7a7a7a - medium grey (.spellName)
	52321d - brown
	
	744a4a - dull red (keyboard highlight)
	b07171 - brighter red
	
	4a6b74 - dull blue (keyboard highlight)
	76abb9 - brighter blue (mouseover "instructions")
*/

html {
	height: 100%; width: 100%;
	background-color: #040404;
}

body {
	padding: 0;
	position: relative;
	min-height: 100%;
	margin: 0 auto;
	font-family: helvetica, sans-serif;
	font-size: 14px;
	line-height: 1.2em;
	color: #ccc;
	background-image: url(../images/grid_bg_v3.png);
	background-position: center top;
	background-repeat: no-repeat;
}

p {
	padding: 5px;
	margin: 0;
}

p a {
	color: #6F672F;
}

p a:hover {
	color: #ccc;
}

.gold {
	color: #6F672F;
}

.boldGold {
	color: #6F672F;
	font-weight: bold;
}

.boldBlue {
	color: #4a6b74;
	font-weight: bold;
}

/*-----------------------------------
		Instructions Screen
-----------------------------------*/

#instructions-screen {
	position: absolute;
	left: 0px;
	top: 0px;
	display: none;
	height: 100%;
	width: 100%;
	opacity: 0.85;
	background: #000;
	z-index: 100;
	overflow: hidden;
}

#instructions {
	position: absolute;
	top: 200px;
	left: 35%;
	width: 30%;
	font-size: 16px;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

#instructions:hover { cursor: default; }

#instructions p {
	padding-bottom: 10px;
	line-height: 1.3em;
}

/*-----------------------------------
		Header
-----------------------------------*/

div#top_bg {
	height: 45px;
	width: 100%;
}

div#top {
	height: 100%;
	width: 940px; min-width: 940px;
	margin: 0 auto;
	/*border-bottom: 1px solid #7a7a7a;*/
	position: relative;
	padding: 0 10px;
	z-index: 1;
}

div#text_logo {
	position: absolute;
	top: 5px;
	left: 20px;
	height: 50px;
	width: 256px;
	background-image: url(../images/text_logo.png);
	background-repeat: no-repeat;
	z-index: 50;
}

div#text_logo {
	cursor: pointer;
}

div#nav_classSelection {
	position: absolute;
	bottom: 0px;
	right: 160px;
	display: inline-block;
	height: 30px;
	width: 165px;
	background-image: url(../images/nav_text.png);
	background-repeat: no-repeat;
	background-position: -90px -35px;
	z-index: 50;
}

div#nav_classSelection:hover {
	background-image: url(../images/nav_text.png);
	background-repeat: no-repeat;
	background-position: -90px -2px;
	cursor: pointer;
}

div#nav_about {
	position: absolute;
	bottom: 0px;
	right: 60px;
	display: inline-block;
	height: 30px;
	width: 80px;
	background-image: url(../images/nav_text.png);
	background-repeat: no-repeat;
	background-position: 0px -35px;
	z-index: 50;
}

div#nav_about:hover {
	background-image: url(../images/nav_text.png);
	background-repeat: no-repeat;
	background-position: 0px -2px;
	cursor: pointer;
}

div#banner2 {
	position: absolute;
	right: 20px;
	top: 20px;
	height: 50px;
	width: 450px;
	padding: 3px 5px 10px 5px;
	line-height: 50px;
	vertical-align: middle;
	text-align: center;
	color: #6f672f;
	background: #3a3a3a;
	color: #ccc;
	font-style: normal;
	font-size: 13px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
	border: 1px solid #ccc;
	border-radius: 5px;
	-webkit-border-radius: 5px 5px;
}

/*-----------------------------------
		Content area
-----------------------------------*/

div#middle_bg {
	width: 100%;
	margin: 0 auto;
}

div#middle {
	position: relative;
	border: 1px solid #7a7a7a;
	border-bottom: none;
	border-radius: 10px 10px 0 0;
	-webkit-border-radius: 10px 10px 0 0;
	background-color: #040404;
	min-height: 680px;
	width: 940px; min-width: 940px;
	margin: 0 auto;
	padding: 0px;
}

div#middle div.pane {
	margin: 10px;
}

.debug {
	border: 1px solid red;
}

/*-----------------------------------
		Log In
-----------------------------------*/

div.centerText {
	line-height: 145px;
	vertical-align: center;
	text-align: center;
}

div#login-wrapper {
	width: 150px;
	height: 200px;
	margin: 0 auto;
	margin-top: 50px;
	padding: 0;
}

span.fieldLabel {
	font-size: 11px;
	color: #CCC;
	margin: 10px auto;
	margin-bottom: 3px;
	text-align: left;
	display: block;
}

div#login-wrapper input[type=text],
div#login-wrapper input[type=password] {
	width: 140px;
	padding: 4px 4px;
	margin: 0 auto;
	display: block;
}

div#login-wrapper input[type=submit] {
	padding: 4px 4px;
	margin-top: 20px;
	display: block;
}

/*-----------------------------------
		'Index'
-----------------------------------*/

#infoPanel {
	position: absolute;
	top: 250px;
	left: 240px;
	margin: 0 auto;
	width: 420px;
	height: 105px;
	border: 3px solid #6F672F;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	font-size: 28px;
	color: #ccc;
	text-align: left;
	padding: 15px;
	line-height: 1.3em;
	background-color: #141414;
	overflow: hidden;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

#infoPanel:hover {
	cursor: default;
}

#infoPanel-subtitle {
	position: absolute;
	right: 20px;
	bottom: 0px;
	font-size: 16px;
}

#infoPanel-subtitle a {
	color: #744a4a;
	text-decoration: none;
}

#infoPanel-subtitle a:hover {
	color: #b07171;
	cursor: pointer;
}

/*-----------------------------------
		'About' page
-----------------------------------*/

div#welcomeText {
	width: 655px;
	height: 680px;
	margin: 5px;
	float: left;
	background-image: url(../images/welcomeText_bg.png);
	background-repeat: no-repeat;
}

div#welcomeText p {
	font-size: 15.5px;
	line-height: 1.3em;
	margin: 0 0 3px 0;
	text-align: justify;
	color: #040404;
}

a#enter {
	width: 190px;
	height: 55px;
	position: absolute;
	right: 50px;
	top: 100px;
	background-image: url(../images/begin_buttons.png);
	background-repeat: no-repeat;
	background-position: -12px -83px;
}

a#enter:hover {
	background-position: -12px -10px;
	cursor: pointer;
}

div#keyboard_oblique {
	position: absolute;
	right: 0;
	top: 225px;
	width: 234px;
	height: 339px;
	background-image: url(../images/keyboard_oblique.png);
	background-repeat: no-repeat;
	z-index: 1;
}

/*-----------------------------------
		Build
-----------------------------------*/

div.spacer {
	height: 30px;
	width: 100%;
	line-height: 30px;
	vertical-align: middle;
	text-align: center;
	color: #6f672f;
}

div.spacer a {
	color: #6f672f;
}

div.centeredHeader {
	height: 50px;
	font-size: 25px;
	line-height: 50px;
	vertical-align: middle;
	text-align: center;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

div.centeredHeader:hover {
	cursor: default;
}

div#classIconsContainer {
	width: 623px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

div#classIconsContainer:hover {
	cursor: default;
}

.classIcon {
	height: 50px;
	width: 50px;
	display: inline-block;
	border: 1px solid #7a7a7a;
	-webkit-border-radius: 2px;
    border-radius: 2px;
	opacity: 0.5;
}

.classIcon:hover {
	cursor: pointer;
}

.classIcon img {
	max-height: 100%;
	max-width: 100%;
}

div.hide {
	display: none;
}

div#raceSelectionContainer {
	width: 133px;
	margin-left: auto;
	margin-right: auto;
}

.raceSelection {
	display: none;
}

.specTalents {
	display: none;
}



.leftMargin {
	margin-left: 10px;
}

/*-----------------------------------
		Select List
-----------------------------------*/

div.selectBox {
	position: relative;
	display: inline-block;
	cursor: default;
	text-align: left;
	line-height: 30px;
	clear: both;
	color: #ccc;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

div.selectBox {
	cursor: pointer;
}

span.selected {
	width: 100px;
	text-indent: 20px;
	border: 1px solid #000;
	border-right: none;
	border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    background: #3f3f3f;
    overflow: hidden;
	color: #ccc;
}

span.selectArrow {
	width: 30px;
    border: 1px solid #000;
	border-left: none;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    text-align: center;
    font-size: 20px;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
    background: #3f3f3f;
	color: #000;
}

span.selected, span.selectArrow {
	position: relative;
	float: left;
	height: 30px;
	z-index: 1;
}

div.selectOptions {
	position: absolute;
	top: 28px;
	left: 1px;
	width: 128px;
	border: 1px solid #3f3f3f;
	border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    overflow: hidden;
    background: #3f3f3f;
    padding-top: 2px;
    display: block;
	z-index: 10;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

span.selectOption {
	display: none;
	width: 80%;
	line-height: 20px;
	padding: 5px 10%;
}

span.selectOption:hover {
	cursor: pointer;
}

span.selectOption:hover {
	color: #3f3f3f;
	background: #ccc;
}

/*--------------------------------
	Specilizations & Talents pane
  --------------------------------*/

#specTalentsSelectionContainer {
	height: 365px;
	width: 600px;
	padding: 0;
	margin-left: auto;
	margin-right: auto;
	display: none;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

#specTalentsSelectionContainer:hover {
	cursor: pointer;
}

#specTalentsSelectionContainer img {
	height: 35px;
	width: 35px;
	display: inline-block;
	border: 1px solid #7a7a7a;
	-webkit-border-radius: 2px;
    border-radius: 2px;
	margin: 6px 2px;
}

.specTalentRowLabel {
	float: left;
	height: 50px;
	width: 9%;
	line-height: 53px;
	vertical-align: middle;
	border: 1px solid #3f3f3f;
	border-top: none;
	text-align: center;
	color: #4A4A4A
}

.talentWindowRow {
	height: 50px;
	width: 100%;
	display: block;
	padding: 0;
	margin: 0;
	background: #000;
}

.specsRow {
	border-top: 1px solid #3f3f3f;
	margin-bottom: 5px;
}

.specTalent {
	float: left;
	height: 100%;
	width: 30%;
	font-size: 15px;
	vertical-align: middle;
	border: 1px solid #3f3f3f;
	border-left: none;
	border-top: none;
	text-indent: 5px;
	text-align: left;
}

.specTalent div {
	display: table-cell;
	vertical-align: middle;
}

.specTalent span {
	opacity: 0.5;
}

.talentIcon {
	display: none;
}

#lev15Talents {
	border-top: 1px solid #3f3f3f;
}

/*-----------------------------------
	Begin button
-----------------------------------*/

#specChosenWrapper {
	display: none;
	margin-left: auto;
	margin-right: auto;
	height: 35px;
	width: 100%;
	margin-top: 20px;
	text-align: center;
}

#specChosen, #button-enter {
	width: 132px;
	height: 32px;
	border: 1px solid #000;
	border-radius: 5px;
	background-color: #3F3F3F;
	color: #CCC;
	text-align: center;
	line-height: 32px;
	vertical-align: middle;
	font-size: 14px;
	margin-left: auto;
	margin-right: auto;
}

#specChosen:hover, #button-enter:hover {
	cursor: pointer;
}

#specChosen input[type=submit] {
	font-size: 14px;
	margin-left: auto;
	margin-right: auto;
}

/*-----------------------------------
	Spellbook
-----------------------------------*/

div#spellbookWrapper {
	margin: 0 auto;
	margin-bottom: 10px;
	width: 100%;
}

div#spellbook {
	height: 265px;
	width: 890px;
	margin: 15px 20px 0 20px;
	padding: 5px;
	overflow: hidden;
}

.spellbookScrollingHolder {
	position: relative;
	top: 0;
	left: 0;
	height: 272px;
	width: 4000px;
}

.spellColWrapper {
	width: 180px;
	float: left;
}

.spellRow {
	display: block;
	height: 40px;
	width: 180px;
	margin-bottom: 5px;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
	opacity: 0.8;
}

.spellRow:hover {
	cursor: default;
}

.spellRow a {
	color: #ecc40d;
	text-decoration: none;
}

.bgGrad {	
	background: -moz-linear-gradient(top,  rgba(91,65,43,0) 5%, rgba(91,65,43,0.75) 30%, rgba(91,65,43,0.75) 49%, rgba(109,77,52,0.74) 68%, rgba(133,93,63,0) 94%, rgba(138,97,66,0) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(5%,rgba(91,65,43,0)), color-stop(30%,rgba(91,65,43,0.75)), color-stop(49%,rgba(91,65,43,0.75)), color-stop(68%,rgba(109,77,52,0.74)), color-stop(94%,rgba(133,93,63,0)), color-stop(100%,rgba(138,97,66,0))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(91,65,43,0) 5%,rgba(91,65,43,0.75) 30%,rgba(91,65,43,0.75) 49%,rgba(109,77,52,0.74) 68%,rgba(133,93,63,0) 94%,rgba(138,97,66,0) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(91,65,43,0) 5%,rgba(91,65,43,0.75) 30%,rgba(91,65,43,0.75) 49%,rgba(109,77,52,0.74) 68%,rgba(133,93,63,0) 94%,rgba(138,97,66,0) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(91,65,43,0) 5%,rgba(91,65,43,0.75) 30%,rgba(91,65,43,0.75) 49%,rgba(109,77,52,0.74) 68%,rgba(133,93,63,0) 94%,rgba(138,97,66,0) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(91,65,43,0) 5%,rgba(91,65,43,0.75) 30%,rgba(91,65,43,0.75) 49%,rgba(109,77,52,0.74) 68%,rgba(133,93,63,0) 94%,rgba(138,97,66,0) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005b412b', endColorstr='#008a6142',GradientType=0 ); /* IE6-9 */
}

.spellName {
	display: inline-block;
	vertical-align: top;
	height: 39px;
	width: 130px;
	padding-top: 3px;
	color: #ecc40d;
	font-size: 13px; font-weight: bold;
	text-shadow: 1px 1px 0px #24221e;
    filter: dropshadow(color=#24221e, offx=1, offy=1);
}

.spellText {
	vertical-align: top;
	color: #a19459;
	font-size: 11px; font-weight: normal;
	text-shadow: none;
    filter: none;
}

#sb_navButton-wrapper {
	position: relative;
	height: 25px;
	width: 100%;
	padding-bottom: 10px;
	border-bottom: 1px dashed #6F672F;
	text-align: center;
	line-height: 25px;
	color: #6F672F;
	font-size: 13px; font-weight: bold;
	
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

#sb_abilityFilter-wrapper {
	position: absolute;
	left: 25px;
	display: block;
	
}

#sb_abilityFilter-wrapper:hover {
	cursor: default;
}

.checkbox-checked:hover, .checkbox-unchecked:hover {
	cursor: pointer;
}

.checkbox-checked {
	display: inline-block;
	vertical-align: middle;
	width: 18px;
	height: 18px;
	margin-right: 10px;
	background-image: url(../images/checkboxes.png);
	background-repeat: no-repeat;
	background-position: -20px -11px;
}

.checkbox-unchecked {
	display: inline-block;
	vertical-align: middle;
	width: 18px;
	height: 18px;
	margin-right: 10px;
	background-image: url(../images/checkboxes.png);
	background-repeat: no-repeat;
	background-position: -48px -11px;
}

#sb_pageNum {
	display: inline-block;
	width: 90px;
	vertical-align: middle;
	text-align: center;
}

#sb_pageNum:hover {
	cursor: default;
}

.sb_navButton {
	display: inline-block;
	height: 25px;
	width: 40px;
	vertical-align: middle;
	text-align: center;
}

.sb_navButton:hover {
	cursor: pointer;
}

div#instructions-link {
	position: absolute;
	right: 270px;
	color: #4a6b74;
	display: inline-block;
	vertical-align: middle;
}

div#instructions-link:hover {
	cursor: pointer;
	color: #76abb9;
}

img#question_mark {
	vertical-align: middle;
}

#sb_currentSpec {
	position: absolute;
	right: 25px;
	display: inline-block;
	opacity: 0.9;
}

#sb_currentSpec:hover {
	cursor: default;
}

#sb_totalPages {
	display: none;
}

div#helper_dragMe {
	position: absolute;
	left: 108px;
	top: 81px;
	width: 270px;
	height: 100px;
	background-image: url(../images/dragMe.png);
	background-repeat: no-repeat;
	z-index: 100;
	display: none;
}

/*-----------------------------------
	Ability Icons
-----------------------------------*/

div.draggableAbility {
	display: inline-block;
	border: 1px solid #a19459;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-box-shadow: 0px 0px 1px 1px #52321d;
	box-shadow: 0px 0px 1px 1px #52321d; 
	border-radius: 2px;
	height: 35px; width: 35px;
}

div.draggableAbility img {
	max-height: 100%; max-width: 100%;
}

div.draggableAbility:hover {
	cursor: pointer;
}

/*-----------------------------------
	Keyboard
-----------------------------------*/

div#devicesWrapper {
	margin-top: 20px;
	position: relative;
	
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

div#devicesWrapper:hover {
	cursor: default;
}

div#modifierState {
	position: absolute;
	left: 390px;
	top: 8px;
}

span#modifierState-status {
	display: block;
	font-size: 24px;
	color: #7A7A7A;
	margin-bottom: 2px;
}

span#modifierState-label {
	font-size: 11px;
	color: #7A7A7A;
	margin-left: 3px;
}

div#keyboardContainer {
	/*border: 1px dashed #7a7a7a;*/
	height: 363px;
	width: 525px;
	display: inline-block;
	margin-left: 20px;
}

div.keyContainer {
	float: left;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	background-color: #161616;
	margin: 5px 0 0 5px;
	font-size: 11px;
	line-height: 10px;
}

.keyContainer-greyShadow {
	-webkit-box-shadow: 0px 0px 1px 1px #404040;
	box-shadow: 0px 0px 1px 1px #404040;
	border: 1px solid #404040;
}

.keyContainer-goldShadow {
	-webkit-box-shadow: 0px 0px 1px 1px #6F672F;
	box-shadow: 0px 0px 1px 1px #6F672F;
	border: 1px solid #6F672F;
}

.keyContainer-blueShadow {
	-webkit-box-shadow: 0px 0px 1px 1px #4a6b74;
	box-shadow: 0px 0px 1px 1px #4a6b74;
	border: 1px solid #4a6b74;
}

.keyContainer-redShadow {
	-webkit-box-shadow: 0px 0px 1px 1px #744a4a;
	box-shadow: 0px 0px 1px 1px #744a4a;
	border: 1px solid #744a4a;
}

div.keyContainer-hover {
	background: #6F672F;
}

span.keyLabel {
	margin-left: 2px;
}

.grey {
	color: #7a7a7a;
	font-style: italic;
	font-size: 11px;
}

div.fKey {
	height: 38px;
	width: 53px;
}

div.squareKey {
	height: 53px;
	width: 53px;
}

.iconHolder, .iconHolder-fKey, .iconHolder-space {
	height: 32px; max-height: 32px;
	width: 32px; max-width: 32px;
	margin-top: 8px;
	margin-left: 18px;
}

div.iconHolder-fKey {
	margin-top: -6px;
}

div.iconHolder-space {
	margin-left: 107px;
}

/*-----------------------------------
	Mouse
-----------------------------------*/

div#mouseContainer {
	/*border: 1px dashed #7a7a7a;*/
	height: 363px;
	width: 380px;
	display: inline-block;
	position: relative;
	
	-webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

div.mouseKey {
	width: 40px;
	height: 40px;
}

.iconHolder-mouse {
	height: 32px; max-height: 32px;
	width: 32px; max-width: 32px;
	margin-top: 4px;
	margin-left: 4px;
}

#wheelUp-text {
	position: absolute;
	right: 64px;
	top: 25px;
}

#wheelClick-text {
	position: absolute;
	right: 52px;
	top: 75px;
}

#wheelDown-text {
	position: absolute;
	right: 50px;
	top: 125px;
}

/*-----------------------------------
	Footer
-----------------------------------*/

div#bottom_bg {
	width: 100%;
	margin-bottom: 15px;
}

div#bottom {
	border: 1px solid #7a7a7a;
	border-top: none;
	border-radius: 0 0 10px 10px;
	-webkit-border-radius: 0 0 10px 10px;
	background: #040404;
	width: 940px; min-width: 940px;
	margin: 0 auto;
	padding-top: 20px;
	position: relative;
	padding: 0px;
}

#copyStatement {
	text-align: center;
	font-size: 12px;
	color: #4a6b74;
}

a:-webkit-any-link {
	color: #4a6b74;
	text-decoration: none;
}

a:-webkit-any-link:hover {
	cursor: text;
}

/*-----------------------------------
	Weinman's trick for clearing floats
-----------------------------------*/

p.clear {
	clear: both;
	height: 0; /* only for IE */
	margin: 0;
	padding: 0;
}