body {
	margin: 0;
	padding: 0;
	color: #000;
	background: url(/i/paper.jpg);
	overflow-x: hidden;
	font-family: "Adobe Caslon Pro", Times, serif;
	-webkit-text-size-adjust:none;
}

@media only screen and (max-device-width: 1024px) {
    body {
        width:1024px;
    }
	#container {
		-webkit-box-shadow: 0px 0px 0px black;
		-moz-box-shadow: 0px 0px 0px black;
		border: 0;
    	overflow: hidden;
    }
}
@media only screen and (device-width: 768px) {
    body {
        width:768px;
    }
    #container {
    	overflow: hidden;
    }
}

h1, h2, h3, h4 {
  font-family: Helvetica, Arial,sans-serif;
}

p, li {
	line-height: 1.3em;
}

table {
	border: 0;
	border-spacing: 0;
	padding: 0;
}


a {
	color: #118414;
	text-decoration: none;
	font-weight: bold;
}

a:hover {
	text-decoration: underline;
}	

div#container.docs {
	background: #FFF url(/i/bgsmall.jpg) no-repeat;
	font-size: small;
}

div#container.asihttprequest {
	background: #FFF url(/i/headerbg.jpg) no-repeat;
	font-size: small;
}

div#container {
	-webkit-box-shadow: 0px 2px 8px #aaa;
	-moz-box-shadow: 0px 2px 8px #aaa;
	border: 1px solid #AAA;
	border-bottom: 0;
	background: #FFF url(/i/bg.jpg) no-repeat;
	border-top: 0;
	width: 1024px;
	margin: 0 auto 0 auto;
	overflow: hidden;
}

header {
	position: relative;
	display: block;
	width: 100%;
	height: 248px;
	background: url(/i/stripes.png);
	background: url(/i/stripes.png), url(/i/topsnakes.png) no-repeat 820px top;
	border-bottom: 1px solid #AAA;
	
}

div#container.docs header {
	height: 148px;
}

div#container.asihttprequest header {
	background: transparent;
	height: 128px;
}

div#container.asihttprequest article.big {
	padding: 0;
	margin: 0;
}

img#logo {
	position: absolute;
	left: 25px;
	top: 20px;
}

div#container.docs header img#logo {
	position: absolute;
	left: 18px;
	top: 10px;
}

div#container.asihttprequest header img#logo {
	left: 6px;
	top: 3px;
	z-index: 10;
}

header h1 {
	position: absolute;
	left: 768px;
	margin: 0;
	padding: 0;
	top: 296px;
	width: 230px;
	font-size: 0.9em;
	text-shadow: 0px 1px 1px #FFF;

}

div#container.docs header div {
	position: absolute;
	left: 180px;
	top: 40px;
	color: black;
	text-shadow: 0px 1px 1px #FFF;	
	font-family: Helvetica, Arial, sans-serif;
}

div#container.asihttprequest header div {
	left: 15px;
	top: 15px;
}


div#container.docs header div nav {
	display: block;
}

div#container.docs header div nav ul {
	position: absolute;
	margin: 1.4em 0 0.5em -8px;
	padding: 0;
	width: 850px;
	height: 60px;
}

div#container.asihttprequest header div nav ul {
	position: relative;
	width: 1010px;
	height: auto;
	margin: 30px 0 0.5em 0px;

}

div#container.docs header div nav ul li {
	font-family: Helvetica, Arial,sans-serif;
	list-style: none;
	display: inline-block;
	font-size: 1.1em;
	padding: 0;
	margin: 0 0;
}

div#container.docs header div nav ul li a {
	color: white;
	text-shadow: 0px 1px 1px #000;	
	padding: 0.5em 0.6em 0.5em 0.6em;
}

div#container.asihttprequest header div nav ul li a {
	color: black;
	font-size: 1.05em;
	text-shadow: 0px 1px 1px #fff;	
}

div#container.asihttprequest header div nav ul li a {
	padding: 0.5em;
}


div#container.docs header div nav ul li a:hover {
	text-decoration: none;
	color: black;
	text-shadow: 0px 1px 1px white;	
}

div#container.docs header div nav ul li.selected a {
	color: #FFF;
	background: -webkit-gradient(linear, left top, left bottom, from(#666), to(black));
	background: -moz-linear-gradient(270deg, #666, black);
	-moz-border-radius: 8px;
	border-radius: 8px;	
	text-shadow: 0px 1px 1px #000;
	
}

div#container.docs header div h1 {
	left: auto;
	top: auto;
	width: 500px;
	position: relative;
	font-size: 2.0em;
	font-weight: bold;
	margin: 0 0 0.2em 0;
	padding: 0;
}



div#container.docs header div h3 {
	font-size: 1.1em;
	margin: 0 0 0.3em 0;
	padding: 0;
	font-weight: bold;
}

div#container.asihttprequest header div h1  {
	margin: 0 0 0.1em 90px;
}

div#container.asihttprequest header div h3 {
	margin-left: 100px;
}

header div#promos {
	left: 285px;
	top: 60px;
	position: absolute;
}

header div#promos h3 {
	text-shadow: 0px 1px 1px #FFF;
	font-size: 0.9em;
	font-weight: bold;
	margin: 0 0 0.5em 0;
	padding: 0;
}

header div#promos img {
	-webkit-box-shadow: 0px 2px 5px #666;
	-moz-box-shadow: 0px 0px 5px #666;
	border-radius: 8px;
	-moz-border-radius: 8px;
	margin: 0 10px 0 0;	
}

header div#promos img#soon {
	position: absolute;
	-webkit-box-shadow: 0px 0px 0px #666;
	-moz-box-shadow: 0px 0px 0px #666;
	border-radius: 0px;
	-moz-border-radius: 0px;
	margin: -28px 0 0 230px;
	border: 0;
}

section#main {
	display: block;
	padding: 32px 28px 20px 28px;
}

img {
	border: 0;
}

form {
	margin: 0;
	padding: 0;
}

nav#sidebar h2 {
	text-shadow: 0px 1px 1px #FFF;
	border-bottom: 1px solid #333;
	padding-bottom: 0.2em;
	margin: 0.8em 0 0.2em 0;
}

nav#sidebar h3 {
	border-bottom: 1px solid #AAA;
	padding-bottom: 0.2em;
	font-weight: normal;
	font-size: 1.0em;
	margin: 0;
}


nav#sidebar ul#opensource h3
{
	border: 0;
	padding-bottom: 0.2em;
	line-height: 1.0em;
}

nav#sidebar {
	display: block;
	width: 230px;
	padding-top: 4em;
	float: right;
}

nav#sidebar ul {
	margin: 0;
	padding: 0;
}



nav#sidebar ul li {
	list-style: none;
	margin: 0;
	padding: 0.5em 0.4em 0.4em 25px;
	background: url(/i/dots.png) repeat-x left bottom;

}

nav#sidebar ul li a {
	color: #2b57b0;
	overflow: hidden;
	height: 1%;
	display: block;
}

nav#sidebar ul#tweets li a {
	color: #820b94;
	display: inline;
}

nav#sidebar ul#tweets li {
	padding-left: 0.4em;
}

nav#sidebar ul#opensource li a {
	color: #ae0a14;
}

nav#sidebar ul li a img {
	position: absolute;
	margin-left: -22px;
}

nav#sidebar ul li:last-child
{
	background: transparent;
}

nav#sidebar nav#archives ul {
	margin-bottom: 0.5em;
}

section#articles {
	display: block;
	float: left;
	width: 700px;
	padding-right: 10px;
	font-size: 1.1em;
}

section#articles ul li, section#articles ol li {
	margin: 0.5em 0 0.5em 0;
}

section#articles h3 {
	margin: 1.5em 0 0.6em 0;
	padding: 0;
	font-size: 1.3em;
	font-weight: normal;
	color: #333;
}

section#articles h3#browse_count {
	margin: 0.5em 0 0 0;
}

section#articles h4 {
	text-shadow: 0px 1px 1px #FFF;
	margin: 1.5em 0 0.3em 0;
	padding: 0;
	font-size: 0.9em;
	font-weight: bold;
}

section#articles h2 {
	text-shadow: 0px 1px 1px #FFF;
	font-weight: normal;
	margin: 0 0 0.4em 0;
	padding: 0;
	font-size: 1.5em;
}

section#articles h2 a {
	font-weight: normal;
	color: #113dca;
}

section#articles h2 a:hover {
	text-decoration: none;
}

pre {
	font-family: 'Andale Mono', 'Lucida Console', Monaco, monospace;
	display: block;
	border: 1px solid #CCC;
	font-size: 1.0em;
	background: -webkit-gradient(linear, left top, left bottom, from(#fffef9), to(#fefae8));
	background: -moz-linear-gradient(270deg, #fffef9, #fefae8);
}



article.big pre {
	font-size: 1.1em;
}


article.big p {
	font-size: 1.2em;
	margin: 0 0 1.0em 0;
	padding: 0;
}

article.big li {
	margin-bottom: 0.5em;
}

code {
	display: block;
	padding: 0.5em;
	margin: 0.5em 0 0.5em 0;
}

section#articles img, .shadow, .labelled_image {
	-webkit-box-shadow: 0px 3px 3px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 3px 3px rgba(0,0,0,0.5);
	padding: 1px;
	border: 1px solid #888;
	display: block;
	margin: 0 0.8em 0.8em 0;
}

.labelled_image {
	width: 700px;
	padding: 0;
}

section#articles .labelled_image img {
	margin: 0;
	padding: 0;
	border: 0;
	border-bottom: 1px solid #888;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
}

section#articles .labelled_image p {
	background: #f5ecd9;
	padding: 0.5em;
	font-size: 0.8em;
	margin: 0;
}

section#articles article {
	padding: 0 0 1em 0;
	margin: 0 0 0.5em 0;
	display: block;
	background: url(/i/divider.png) repeat-x bottom left;
	overflow: visible;
	height: 1%;
}

section#articles article:last-child {
	background: transparent;
}

section#articles article p {
	margin: 0 0 0.9em 0;
}

.r, section#articles img.r {
	float: right;
	margin: 0 0 10px 10px;
}

.l, section#articles img.l {
	float: left;
	margin: 0 10px 10px 0;
}

section#articles article p.postedby {
	clear: both;
	font-size: 0.8em;
	padding: 0.8em 0 0 0;
}


div#page_bottom {

	position: relative;
}

footer {
	clear: both;
	background: url(/i/footerbg.jpg) no-repeat left top;
	padding: 2.5em 1.0em 0 1.0em;
	display: block;
	font-size: 0.9em;
	height: 250px;
	text-shadow: 0px 1px 1px #FFF;
	position: relative;
	position: relative;
}

.docs footer {
	height: auto;
}

footer section#send {
	position: absolute;
	margin: 0 0 0 690px;
	width: 290px;
}

footer section#about {
	position: absolute;
	width: 695px;
	padding-left: 15px;
}

footer section#shfooter {
	width: 400px;
	display: block;
	padding: 5px 0 0 0;
}

footer img {
	border: 0;
	margin: 0 0.5em 0 0;
	display: inline-block;
}

footer p {
	margin: 0 0 0.5em 0;
}

footer address {
	font-style: normal;
	margin-bottom: 0.5em;
}

footer h4 {
	margin: 0 0 0.4em 0;
	padding: 0;
}

nav.tags {
	display: block;
	margin: 0 0 0.2em 0;
	font-size: 0.7em;
	font-family: Helvetica, Arial, sans-serif;

}

nav.tags p {
	display: inline-block;
	margin: 0 0 0.5em 0;
}

nav.tags ul {
	margin: 0;
	padding: 0;
	display: inline-block;
}

nav.tags li {
	margin: 0 0.5em 0 0;
	list-style: none;
	display: inline-block;
	background: transparent;
}

nav.tags li a {
	color: #FFF;
	text-shadow: 0px 1px 1px rgba(0,0,0,0.7);
	padding: 0.4em 0.7em 0.4em 0.7em;
	-moz-border-radius: 4px;
	border-radius: 4px;	
	background: #9274d5;

}

nav.tags li a:hover {
	background: #289b9f;
	text-decoration: none;
}

nav h2 {
	margin: 0.5em 0 0.3em 0;
	padding: 0;
}


table.details {
	font-size: 1.1em;
	margin: 0.8em 0 0.8em 0;
	border-top: 1px solid #CCC;
}

table.details td,table.details th {
	text-align: left;
	vertical-align: top;
	padding: 1.0em 0.8em 1.0em 0.8em;
	border-bottom: 1px solid #CCC;
	background: #f6fef8;
}
table.details tr:nth-child(odd) td, table.details tr:nth-child(odd) th {
	background: #e9f3eb;
}

table.details th {
	padding-right: 2.0em;
}


table.comparison {
	font-size: 1.1em;
	margin: 0.8em 0 0.8em 0;
}

table.comparison th, table.comparison td
{
	padding: 0.5em;
	text-align: left;
	font-size: 1.0em;
	background: #fcf8f8;
}

table.comparison th {
	font-weight: bold;
	color: #FFF;
	background: #9d3d3d;
}

table.comparison tr:first-child td {
	border-top: 1px solid #e4b9b9;
}

table.comparison tr:nth-child(odd) td {
	background: #f5e6e6;
}
table.comparison td {
	border: 1px solid #e4b9b9;
	border-right: 0;
	border-left: 0;
	border-top: 0;
}

table.comparison tr td:first-child {
	border-left: 1px solid #e4b9b9;
}

table.comparison tr td:last-child {
	border-right: 1px solid #e4b9b9;
}

table.comparison {
	border: 0;
}

table.comparison tr td.time {
	text-align: right;
}

.small {
	font-size: small;
}

nav#postnav ul {
	margin: 0.5em 0 0.5em 0;
	padding: 0;
}

nav#postnav ul li {
	list-style: none;
	margin: 0;
	padding: 0;
	display: inline-block;
}

ol.footnotes {
	padding: 0.5em 0 0 1.0em;
	margin: 1.0em 0 1.0em 0;
	border-top: 1px solid #CCC;
}

ol.footnotes li {
	list-style: lower-roman outside;
	font-size: 0.8em;
}

.footnote {
	font-size: 0.8em;
}




section#articles img.noshadow {
	border: 0;
	-webkit-box-shadow: 0 0 0 white;
	-moz-box-shadow: 0 0 0 white;
}

article.big {
	padding: 0 0 20px 0;
	display: block;
	margin: 0;
	font-size: 1.2em
}

div#container.asihttprequest article.big {
	padding: 0 0 20px 0;
}


article.big section.info, aside.info, article.big section.contents {
	-moz-border-radius: 8px;
	border-radius: 8px;	
	background: -webkit-gradient(linear, left top, left bottom, from(white), to(#ecf1ff));
	background: -moz-linear-gradient(270deg, white, #ecf1ff);
	border: 1px solid #CCC;
	display: block;
	margin-top: 1.0em;
	padding: 1.0em 1.5em 1.0em 1.5em;
	overflow: auto;
	height: 1%;
}

article.big section.info, article.big section.info:first-child  {
	background: -webkit-gradient(linear, left top, left bottom, from(#ecf1ff), to(white));
	background: -moz-linear-gradient(270deg, #ecf1ff, #white);
	font-size: 0.8em;
}

aside.info img {
	float: left;
}

aside.info div {
	margin-left: 86px;
}

aside.info div p, aside.info div h3 {
	margin: 0 0 0.5em 0;
}

.class_description {
	overflow: auto;
	height: 1%;
	padding-bottom: 0.5em;
	margin-top: 0.5em;
	border-bottom: 1px solid #CCC;
}



.class_description img.l {
	margin-right: 10px;
	float: left;
}

.class_description div {
	margin-left: 360px;
}

section.smaller .class_description div {
	margin-left: 200px;
}

article.big .class_description div h3 {
	margin-top: 0.5em;
	font-size: 1.3em;
}

article.big h2 {
	color: #77129d;
	font-size: 1.9em;
	margin: 1.0em 0 0.5em 0;
	padding: 0;
	font-weight: normal;
}

article.big h3 {
	color: #113dca;
	margin: 1.0em 0 0.6em 0;
	padding: 0;
	font-size: 1.6em;
	font-weight: normal;
}

article.big section {
	background: url(/i/sectionbreak.jpg) no-repeat;
	padding: 1.0em 3.0em 2.0em 3.0em;
	margin: 0;
	display: block;
}

article.big p,article.big li {
	margin-right: 1.5em;
	font-size: 1.2em;
}

article.big nav#contents {
	padding: 0.5em 2em 0.5em 2em;
	text-align: right;
	margin: 0;
	background: rgba(100,0,100,0.1);
	display: block;
}

nav#contents label {
	font-family: Helvetica, Arial, sans-serif;
	font-weight: normal;
	display: inline;
}

nav#contents select {
	font-size: 1.0em;
	width: 400px;
	border: 1px solid #AAA;
	border-radius: 5px;
}

article section.subsection {
	padding: 0 0 2.0em 0;
	margin: 2.0em 0 0 0;
	border-bottom: 1px solid #CCC;
	display: block;
}



article.big section.subsection, article.big section.sample {
	border-bottom: 1px solid #CCC;
	padding: 0.2em 0 0.4em 0;
	margin: 0.4em 0 0 0;
	display: block;
	background:transparent;
	overflow: auto;
	height: 1%;
}




article.big section.sample img {
	float: left;
}

article.big section.sample code {
	font-size: 0.9em;
}
article.big section.sample div {
	margin-left: 170px;
}

article.big section.subsection:last-child, article.big section.sample:last-child {
	border: 0;
}

article.big aside.info h3 {
	color: black;
}

div#container.docs footer {
	display: block;
	background: transparent;
	padding: 1.3em 0.8em 0em 0.8em;
	margin: 0;
	background: #999;
	background: -webkit-gradient(linear, left top, left bottom, from(#999), to(#CCC));
	background: -moz-linear-gradient(270deg, #999, CCC);
	background: url(/i/footerbg.jpg) no-repeat left top;
}

div#container.docs footer p {
	margin: 0;
	padding: 1.0em;
	text-align: center;
	color: #000;
	font-weight: bold;
	text-shadow: 0px 1px 1px #FFF;
	font-size: 1.1em;
}


article.big div#apps {
	display: block;
	background:url(/i/botborder.png) repeat-x left bottom;
	padding-left: 5px;
	overflow: auto;
	height: 1%;
}

div#apps div {
	width: 290px;
	height: 110px;
	float: left;
	padding: 30px 18px 20px 0;
	border-bottom: 1px solid #CCC;
	position: relative;
}

div#apps div img {
	position: absolute;
	left: 0;
	-webkit-box-shadow: 0px 3px 5px #AAA;
	-moz-box-shadow: 0px 3px 5px #AAA;
	-moz-border-radius: 18px;
	border-radius: 18px;
}

div#apps div div {
	margin-left: 115px;
	height: auto;
	width: 180px;
	padding: 0;
	border: 0;
}

div#apps div div h2 {
	margin: 0 0 0.3em 0;
	padding: 0;
	font-size: 1.1em;
	font-weight: normal;
}

div#apps div div p {
	margin: 0 0 0.3em 0;
	padding: 0;
	font-size: 1.0em;
}

div#apps div div h2 a {
	color: #6106a1;
}

table.definition_table {
	margin: 0.5em 0 0.5em 0;
	padding: 0;
}

table.definition_table th, table.definition_table td {
	text-align: left;
	padding: 0.5em;
	vertical-align: top;
	border-bottom: 1px solid #000;
}

table.definition_table th {
	vertical-align: bottom;
}

table.definition_table tr:last-child td, table.definition_table tr:last-child th {
	border: 0;
}

footer img#ben {
	position: absolute;
	margin-left: -250px;
}

footer q {
	padding: 0;
}

aside.error {
	display: block;
	background: url(/i/dialog.png);
	position: absolute;
	margin: -125px 0 0 -223px;
	left: 50%;
	top: 50%;
	padding: 70px 40px 0 40px;
	width: 359px;
	height: 134px;
	text-align: center;
	vertical-align: middle;
	font-size: 0.9em;

}

aside.error h1 {
	font-size: 1.8em;
	margin: 0 0 0.5em 0;
	padding: 0;
	font-weight: bold;
	font-family: "Adobe Caslon Pro", Times, serif;
	text-shadow: 0px 1px 1px #FFF;

}

aside.error p {
	margin: 0 0 0.5em 0;
	padding: 0;
	font-size: 1.2em;
	text-shadow: 0px 1px 1px #FFF;

}

table.timemap td, table.timemap th {
	padding: 5px;	
}

article.big h4 {
	font-size: 1.2em;
	margin: 0.9em 0 0.3em 0;
	padding: 0;
	color: #0c71c6;
}

p.more {
	margin: 0 0 1.0em 0;
	padding: 0.4em 0.4em 0.4em 0.4em;
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}

a.but {
	color: #FFF;
	background: -webkit-gradient(linear, left top, left bottom, from(#57a6e0), to(#2070ac));
	background: -moz-linear-gradient(270deg, #57a6e0, #2070ac);
	-moz-border-radius: 8px;
	border-radius: 8px;	
	text-shadow: 0px 1px 1px rgba(0,0,0,0.5);
	padding: 0.4em 0.6em 0.3em 0.6em;
	position: absolute;
	margin-left: -0.4em;
	font-size: 0.9em;
	font-family: Helvetica, Arial,sans-serif;

}

a.but:hover {
	background: -webkit-gradient(linear, left top, left bottom, from(#a06eeb), to(#6f3fb7));
	background: -moz-linear-gradient(270deg, #a06eeb, #6f3fb7);
	text-decoration: none;
	color: #FFF;
	text-shadow: 0px 1px 1px rgba(0,0,0,0.5);
}

q, blockquote {
	font-style: italic;
	padding-left: 2.0em;
	margin-left: 0;
}

ul.filelist {
	margin: 0 0 1.0em 0;
	padding: 0;
}

ul.filelist li {
	list-style: none;
	background:url(/i/doth.png) no-repeat left -3px;
	padding: 0 0 0.8em 24px;
	font-size: 1.0em;
	margin: 0;
}

ul.filelist li.m {
	background:url(/i/dotm.png) no-repeat left -3px;
}

h1#important_message {
	background: url(/i/promobarbg.png) repeat-x;
	padding: 0;
	margin: 0;
	font-size: 1.0em;
	-webkit-box-shadow: 0px 2px 8px #aaa;
	-moz-box-shadow: 0px 2px 8px #aaa;
	border: 1px solid #275bc7;
	border-top: 0;
	border-bottom: 0;
	width: 1024px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	z-index:2;
}

h1#important_message a, h1#important_message span {
	display: block;
	padding: 0.5em 1.0em 0.5em 1.0em;
	margin: 0;
	color: #FFF;
	text-shadow: 0px 1px 1px rgba(0,0,0,0.5);
}

h1#important_message a:hover {
	text-decoration: none;
}

.new {
	color: #FFF;
	background: -webkit-gradient(linear, left top, left bottom, from(#57a6e0), to(#2070ac));
	background: -moz-linear-gradient(270deg, #57a6e0, #2070ac);
	-moz-border-radius: 8px;
	border-radius: 8px;
	padding: 0.2em 0.4em 0.2em 0.4em;
	display: inline-block;
	font-size: 0.7em;
	font-weight: bold;
	font-family: Helvetica, Arial, sans-serif;
}

select#jump {
	-webkit-appearance: none;
	background: url('/i/selectarrows.png') no-repeat right center, -webkit-gradient(linear, left top, left bottom, from(#ccc), to(#fff));
	border: 1px solid #999;
	text-shadow: 0px 0px 1px rgba(255,255,255,1.0);
	min-height:
	-moz-border-radius: 8px;
	border-radius: 8px;	
	color: #444;
	font-size: 1.1em;
	font-weight: bold;
	font-weight: bold;
	padding: 0.5em;
}

#contents label {
	font-size: 1.2em;
	font-weight: bold;
	text-shadow: 0px 1px 1px rgba(255,255,255,1.0);	
}




@media print {

	h1#important_message {
		display: none;
	}
	div#container {
		-webkit-box-shadow: 0px 0px 0px white;
		-moz-box-shadow: 0px 0px 0px white;
		border: 0;
	}
	
	nav.tags li a {
		background: transparent;
		border: 1px solid #AAA;
		color: #333;
		text-shadow: 0 0 0 white;
	}
	
	table.comparison th {
		font-weight: bold;
		color: #000;
		border-bottom: 1px solid #000;
	}
	
	nav#sidebar ul li {
		background: none;
		border-bottom: 1px solid #CCC;
	}
}
