/* Reset
============================== */

article, aside, dialog, figure, footer, header, hgroup, nav, section {
	display: block;
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, hr, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	border: 0;
	padding: 0;
	outline: 0;
	font-size: 1em;
	vertical-align: baseline;
	background-color: transparent;
}
a {
	margin: 0;
	border: 0;
	padding: 0;
	font-size: 1em;
	vertical-align: baseline;
	background-color: transparent;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
mark {
	background-color: #FF9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}
abbr[title], dfn[title] {
	border-bottom: 1px dashed #CCC;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}



/* Global Styles
============================== */

body {
	background-color: #FFF;
	color: #333;
	font: normal 1em/1.4 'Helvetica Neue', Arial, Helvetica, sans-serif;
}

a:link    { color: #007DCC; }
a:visited { color: #005588; }
a:hover,
a:active  { color: #000; }


/* Misc
------------------------------ */

/* Chat available */

p#chat-available {
	margin: 0;
}
	p#chat-available a {
		padding: .5em .8em .4em;
		position: fixed;
		bottom: 0; right: 20px;
		-webkit-border-top-left-radius: 3px;
		-webkit-border-top-right-radius: 3px;
		-moz-border-radius-topleft: 3px;
		-moz-border-radius-topright: 3px;
		border-top-left-radius: 3px;
		border-top-right-radius: 3px;
		z-index: 1000;
		background-color: #DDD;
		color: #666;
		font-size: .75em;
		font-weight: bold;
		text-decoration: none;
		text-shadow: 0 1px 0 #FFF;
	}
		p#chat-available a:hover {
			background-color: #333;
			color: #FFF;
			text-shadow: 0 1px 0 #222;
		}



/* Header
============================== */

header {
	height: 74px;
	border-bottom: 1px solid #E5C700;
	background-color: #FFDE00;
}
	header .container {
		position: relative;
		width: 940px;
		margin: 0 auto;
	}

	/* Logotype */

	header h1 a {
		display: block;
		position: absolute;
		top: 23px; left: -22px;
		width: 160px;
		height: 25px;
		margin: 0;
		background: url(../images/logo.png) no-repeat 0 0;
		color: #333;
		text-indent: -9999em;
		font-size: .8em;
		z-index: 100;
	}



/* Navigation
------------------------------ */

header nav {
	width: 580px;
	margin-left: 160px;
}
	header nav ul {
		padding-top: 27px;
		text-align: center;
		font-size: .9em;
	}
		header nav ul > li {
			display: inline;
			position: relative;
			list-style: none;
		}
			header nav ul > li > a,
			header nav ul > li > a:link,
			header nav ul > li > a:visited {
				margin: 0 .25em;
				padding: .14em .3em .25em .4em;
				-moz-border-radius: 3px;
				-webkit-border-radius: 3px;
				border-radius: 3px;
				color: #333;
				text-decoration: none;
				font-weight: bold;

				-webkit-transition: all .1s linear;
			}
			header nav ul > li > a:hover,
			header nav ul > li > a:active {
				background-color: #E5C700;
			}
			header nav ul > li.active > a {
				background-color: #333;
				color: #FFDE00;
				cursor: default;
			}
			
			header nav .badge-new {
				display: inline-block;
				margin-left: .1em;
				-webkit-border-radius: 2px;
				-moz-border-radius: 2px;
				border-radius: 2px;
				padding: .15em .4em .25em;
				background-color: #E71E17;
				color: #FFF;
				text-transform: uppercase;
				text-shadow: 0 1px 0 rgba(0, 0, 0, .2);
				line-height: 1;
				font-size: .75em;
				vertical-align: .1em;
			}
			header nav a:visited .badge-new {
				background-color: #665E26;
				color: #FFDE00;
			}
			header nav li.active .badge-new {
				background-color: #FFDE00;
				color: #333;
				text-shadow: none;
			}

	header nav ol {
		position: absolute;
		top: -11px; left: 2px;
		z-index: 100;
		width: 190px;
		padding: 0;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		border-radius: 5px;
		background-color: #333;
		font-size: .9em;
		text-align: left;

		-webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, .4);
		-moz-box-shadow: 0 4px 8px rgba(0, 0, 0, .4);
		box-shadow: 0 4px 8px rgba(0, 0, 0, .4);
	}
		header nav ol li {
			padding: .75em 1em;
			border-bottom: 1px solid #444;
			color: #FFF;
			list-style-type: none;
		}
			header nav ol li strong {
				font-size: 1.1em;
				cursor: help;
			}
			header nav ol li a {
				color: #FFF !important;
				text-decoration: none;

				-webkit-transition: color .1s linear;
			}
			header nav ol li a:hover {
				color: #FFDE00 !important;
			}
				header nav ol li a span {
					display: block;
					color: #999;
					font-size: .85em;
					font-weight: normal;
				}
		header nav ol li.link-chat {
			border: 0;
		}
			header nav ol li.link-chat a {
				color: #EEE;
				font-size: .9em;
				font-weight: bold;
			}
			header nav ol li.link-chat a:hover {
				color: #FFDE00 !important;
			}
			header nav ol li.link-chat.status-offline a {
				color: #999 !important;
				cursor: default;
			}
				header nav ol li.link-chat a em {
					margin-left: .75em;
					padding: .1em .5em;
					-moz-border-radius: 50px;
					-webkit-border-radius: 50px;
					border-radius: 50px;
					color: #FFF;
					font-size: .9em;
					font-style: normal;
					font-weight: normal;
					text-shadow: 0 1px 0 rgba(0, 0, 0, .2);
					text-transform: uppercase;
				}
				header nav ol li.link-chat a em.sign-closed 	{ background-color: #E71E17; }
				header nav ol li.link-chat a em.sign-open 		{ background-color: #00D889; }

				header nav ol li.link-chat.status-offline a em.sign-open,
				header nav ol li.link-chat.status-online a em.sign-closed {
					display: none;
				}


/* Signup or Login */

header nav ul#signup-or-login {
	position: absolute;
	top: 23px; right: 0;
	padding: 0;
}
	header nav ul#signup-or-login li {
		font-size: .9em;
	}
	header nav ul#signup-or-login li a {
		display: inline-block;
		padding: .3em .8em;
		border-style: solid;
		border-width: 2px;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		border-radius: 4px;
		font-weight: normal;
	}
	header nav ul#signup-or-login li.link-signup a {
		border-color: #E71E17;
		color: #E71E17;
		background: none;
	}
	header nav ul#signup-or-login li.link-login a {
		border-color: #333;
		background-color: #333;
		color: #FFF;
		text-shadow: 0 1px 0 #000;
	}
	header nav ul#signup-or-login li span {
		display: inline-block;
		margin: 0 .8em 0 .6em;
		padding-bottom: .4em;
		color: #99881A;
		font-size: .65em;
		text-transform: uppercase;
		vertical-align: middle;
	}



/* Layout
============================== */

.page {
	font-size: .8em;
}
	.page .container {
		width: 980px;
		margin: 0 auto;
	}



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

body > footer {
	width: 980px;
	margin: 0 auto;
	padding: 20px 0 40px;
	color: #AAA;
	font-size: .7em;
	text-align: center;
}
		body > footer a {
			color: #AAA !important;
		}
		body > footer a:hover {
			color: #000 !important;
		}
		body > footer ul {
			margin-bottom: .5em;
		}
			body > footer ul li {
				display: inline;
				margin: 0 .75em;
				list-style: none;
			}



/* Developer Tools
============================== */

#api header .container {
	height: 140px;
}

#api .page {
	font-size: .9em;
}
	#api .page .container {
		width: 940px;
		margin-bottom: 30px;
		border-bottom: 1px solid #EEE;
		padding: 40px 20px;
		overflow: hidden;
	}


/* ToC */

#toc {
	position: fixed;
	top: 100px;
	width: 220px;
	padding: 15px 0 0;
}
#toc.stick {
	position: absolute;
}
	#toc h1 {
		margin: 0 -20px;
		-webkit-border-top-right-radius: 3px;
		-moz-border-radius-topright: 3px;
		border-top-right-radius: 3px;
		-webkit-border-top-left-radius: 3px;
		-moz-border-radius-topleft: 3px;
		border-top-left-radius: 3px;
		padding: 1em 20px;
		background-color: #DDD;
		color: #777;
		text-transform: uppercase;
		text-shadow: 0 1px 1px #FFF;
		font-size: .75em;
	}
	#toc ul {
		margin: 0 -20px 20px;
		border-width: 0 1px 1px;
		border-style: solid;
		border-color: #DDD;
		-webkit-border-bottom-right-radius: 3px;
		-moz-border-radius-bottomright: 3px;
		border-bottom-right-radius: 3px;
		-webkit-border-bottom-left-radius: 3px;
		-moz-border-radius-bottomleft: 3px;
		border-bottom-left-radius: 3px;
		padding: 0 20px;
		overflow: hidden;
	}
		#toc ul li {
			margin: 1em 0;
			list-style: none;
			font-weight: bold;
		}
			#toc ul li a {
				border-bottom: 1px solid #BBB;
				color: #333;
				text-decoration: none;
			}
			#toc ul li a:hover {
				border-bottom: 1px solid #000;
				color: #000;
			}
			#toc ul li ul {
				margin: 0;
				border: 0;
				-webkit-border-radius: 0;
				-moz-border-radius: 0;
				border-radius: 0;
				padding: .5em 0 .25em;
			}
				#toc ul li ul li {
					margin: 0 0 .25em;
					padding-left: 20px;
					background: url(../images/bullet-toc.png) no-repeat 8px .55em;
					font-weight: normal;
					font-size: .9em;
				}
				#toc ul li ul li a {
					border-bottom: 1px dotted #BBB;
					color: #666;
					text-decoration: none;
				}
				#toc ul li ul li a:hover {
					border-bottom: 1px solid #777;
				}

		#toc ul li.active {
			margin: 1em -20px;
			border-top: 1px solid #DDD;
			border-bottom: 1px solid #DDD;
			padding: 1em 20px .6em;
			background-color: #F9F9F9;
			text-shadow: 0 1px 0 #FFF;
		}
		#toc ul li.active:first-child {
			margin-top: 0;
			border-top: 0;
		}
		#toc ul li.active:last-child {
			margin-bottom: 0;
			border-bottom: 0;
			-webkit-border-bottom-right-radius: 2px;
			-moz-border-radius-bottomright: 2px;
			border-bottom-right-radius: 2px;
			-webkit-border-bottom-left-radius: 2px;
			-moz-border-radius-bottomleft: 2px;
			border-bottom-left-radius: 2px;
		}
			#toc ul li.active strong {
				color: #000;
				font-weight: bold;
			}



/* Documentation */

#docs {
	width: 620px;
	margin-left: 320px;
	color: #666;
	line-height: 1.5;
}
	#docs h1 {
		margin: 0 0 1em;
		border-bottom: 1px solid #DDD;
		color: #333;
		line-height: 1;
		font-weight: normal;
		font-size: 2em;
	}
	#docs h2 {
		margin: 1em 0 .5em;
		padding: .75em 0 0;
		color: #000;
		font-weight: bold;
		font-size: 1.25em;
	}
	#docs h3 {
		margin: 2em 0 .5em;
		color: #000;
		font-weight: bold;
		font-size: .95em;
	}
	#docs p {
		margin: 0 0 1em;
		text-align: justify;
	}
	#docs ul,
	#docs ol {
		margin: 0 0 1em 2.1em;
		text-align: justify;
	}
		#docs ul li,
		#docs ol li {
			margin-bottom: .75em;
		}
		#docs ul li { list-style: disc; }
		#docs ol li { list-style: decimal; }

	#docs dl {
		margin: 0 0 1em;
	}
		#docs dl dt {
			margin: 1.25em 0 0;
			color: #333;
			font-weight: bold;
		}
		#docs dl dt .code {
			display: inline-block;
			width: 1.9em;
			text-align: right;
		}
		#docs dl dd {
			margin: .5em 0 1.25em 3em;
		}

	#docs hr {
		height: 1px;
		margin: 2em 0;
		border: 0;
		border-bottom: 1px solid #EEE;
		padding: 0;
	}
	#docs strong {
		color: #333;
	}
	#docs pre {
		display: block;
		margin: 1.75em 0;
		border-left: 1px solid #EEE;
		padding: 1em 20px;
		background-color: #F7F7F7;
		color: #333;
		overflow: auto;
	}
	#docs code {
		padding: .2em .5em;
		background-color: #EEE;
		color: #000;
		font: 11px/1.6 "Bitstream Vera Sans Mono", Monaco, "Courier New", Courier, Monospace;
	}

	#docs nav {
		margin: 40px -20px -40px;
		border-top: 1px solid #EEE;
		padding: 1.25em 20px 1.3em;
		background: url(../images/bg-stripes.png);
		font-size: 1.05em;
		overflow: hidden;
	}
		#docs nav a.prev {
			float: left;
			color: #999;
		}
		#docs nav a.next {
			float: right;
			color: #000;
			font-weight: bold;
		}
