html,body {
  padding: 0;
  margin: 0 auto;
  text-align: center;
}
body {
	font-family: arial, sans-serif;
	background-color:#fff;
	font-size: 0.8em;
	color:#000;
	}

.left {
  float:left;
}
.right {
  float: right;
}
.hide {
  display: none;
}
.clear {
  clear:both;
}
.center {
  text-align:center;
  margin: auto;
}

#wrapper{
	margin: 0 auto;
  clear:both;
	text-align: left;
	}
	
/* ########## PAGE LAYOUT ########## */

#header {
	margin: 0 auto;
	padding: 0;
  clear:both;
	height: 100px;
	width: 950px;
	text-align: left;
	}
#header #logotop,#header h1,#header form {
  float:left;
}
#header form {
  margin-top: 2em;
}
#header #adtop {
  float:right;
  text-align: right;
}
	
#pagecontent{
	padding-bottom:5em;
	border-left:1px dotted silver;
	margin:0 0 0 169px;
	}

#content{
	margin:9px;
	}
	
#footer{
    display: block;
  	padding: 10px;
    clear:both;
    text-align:center;
	}

#sidenav {
	float:left;
	width:160px;
	margin:0 ;
	background:#fff;
	padding:0;
	left:0;
	}
	
/* ########## END PAGE LAYOUT ########## */

/* ########## SIDE NAV ########## */

#sidenav ul{
	padding:0;
	margin:0 0 1em 0;
	}
	
#sidenav ul li ul{
	padding:0;
	margin:0 0 1em .6em;
	}
	
#sidenav ul li{
	list-style:none;
	padding:0;
	margin:.4em 0 0 0;
	}
		
#sidenav p {
	margin: 0 .3em 0 0;
	padding:1em 0 0 0;
	}

#sidenav ul li a, #sidenav ul ul li a, #sidenav ul ul ul li a{
  	color: #0000cc;
	display:block;
	width:92%;
	height:100%;
	padding:0;
	}
	
#sidenav ul li a:hover{
  	color: #0000cc;
	}

#sidenav h1{
	font-weight:bold;
	font-size:100%;
	color:#000;
	position:relative;
	background-color:#fff;
	border:none;
	margin:0;
	padding:0 2px 0 2px;
	width:100%;
	left:-2px;
	}
	
#sidenav .top{margin-top:0;}
	
.other{  /* little box for side nav */
	border-top:thin dotted #bbb;
	border-bottom:thin dotted #bbb;
	margin:3em 0 3em 0;
	padding: 0 0 10px 0;
	}

.line{  /* dotted line for division */
	border-top:thin dotted #bbb;
	margin:1em 0 0 0;
	padding:0;
	height:5px;
	}
	
/* Search box */

#sidenav div#search {
  margin-top: 2em;
}

#sidenav div#search .header {
  font-weight: bold;
  font-size: 90%;
  margin-bottom: 1px;
}

#sidenav div#search .button {
  margin-top: 1px;
}

#sidenav div#search .input input {
  width: 125px;
}
	
/* ########## END SIDE NAV ########## */
	
/* ########## OTHER ELEMENTS ########## */

#logo{  /* in header */
	/*float:left;
	width: 175px;
	top:-5px;
  	left:0;
	padding:0;
	margin:0;
	position:absolute;*/
	width: 178px;
	height: 44px;
	background: url('logo.gif') no-repeat;
	text-indent: -9999px;
	}
	
#logo img{
	border:none;
	margin:0;
	}

#logo a {
  text-decoration: none;
  color: #7493CF;
  display: block;
  width: 100%;
  height: 100%;
}
	
#doc_title{
	font-size:140%;
	font-weight:bold;
	border-top: 1px solid;
	background-color: #e5ecf9;
	border-color: #3366CC;
	margin:0;
	padding:1px 0 1px 3px;
	}
	
#page_title{
	font-size:140%;
	font-weight:bold;
	background-color: #fff;
	border: 0; 
	margin:10px 0 5px 10px;
	padding-left:0;
	border-bottom: none;
	}
	
.sidebox{
	width:20em;
	margin: 20px 0 0 22px;
	padding:0 0 1em 0;
	border-left:thin dotted #bbb;
	float:right;
	clear:right;
	position:relative;
	background-color:#fff;
	} 
	
.sidebox h2 {
	font-size:110%;
	font-weight:bold;
	background-color: #e5ecf9;
	border-color: #3366CC;
	margin: 0 5px 0 4%;
	padding:.1em 3px .1em 5px;
	border:none;
	}
	
.sidebox p,.sidebox ul {
	margin: 0 25px;
	padding:1em 0 0 0;
	}
.sidebox div#twitter {
  margin: 1em 2em;
}
.sidebox div#adbox {
  margin: 0 25px;
}

#footerlogo{  /* in footer */
	position: absolute;
	width: 175px;
	padding:0;
	margin:0;
	left:10px;
	}
	
#copyright {  /* in footer */
	text-align: center;
	margin:0px 0 0 175px;
	padding-top:30px;
	}

/* ########## END OTHER ELEMENTS ########## */	

/* ########## HYPERLINKS ########## */

a{
  	color: #0000cc;
	}
	
a:active {
  color: #cc0000;
  text-decoration:none;
}

a:visited {
  color: #551a8b;
}

.backtotop{
	float:right;
	clear:both;
	margin: 1.5em 0 1em 4em;
	position:relative;
	padding:0;
	font-size:80%;
	}
	
.linkbox a{
	font-size:100%;
	font-weight:bold;
	border:1px solid;
	padding: 5px 10px 7px 10px;
	background-color: #e5ecf9;
	border-color: #3366CC;
	}
	
.linkbox{
	margin: 1em 25px 1em 25px;
	padding: 5px 10px 7px 0;
	}
	
.anchor, .anchor:hover, .anchor:active, .anchor:visited{
	color:#000000;
	}

/* ########## END HYPERLINKS ########## */

/* ########## FONT FORMATS ########## */

h1, h2, h3, h4, h5 {
	font-weight:bold;
	}
	
h2, h3, h4, h5 {
	margin-left:25px;
	}

h1 {
  padding: 0;
	font-size:230%;
	margin: 1em;
	/*margin:2em 0 0 10px; 
	padding:0 3px 0 3px;
	border-top: 1px solid;
	background-color: #e5ecf9;
	border-color: #3366CC;*/
	}

h2 {
	font-size:120%;
	margin-top:1.5em;
	border-bottom: 1px solid;
	border-color: #3366CC;
	}

h3 {
	font-size:110%;	
	margin-top:.7em;
	top:.7em;
	z-index:5; /*to avoid falling behind other elements due to lowered position*/
	}
	
h4 {
	margin-top:.5em;
	font-size:100%;
	font-weight:bold;
	z-index:5; /*to avoid falling behind other elements due to lowered position*/
	}
	
h5 {
	margin-top:.4em;
	font-size:100%;
	font-weight:100;
	font-style:italic;
	text-decoration:underline;
	position:relative;
	left:0;
	top:.8em;
	z-index:5; /*to avoid falling behind other elements due to lowered position*/
	}
	
p {
	margin-top: 1em;
	padding:0;
  line-height: 120%;
	}

#wrapper p {
	margin: 1em 0 0 25px;
}
	
ol, ul, dl{
	padding-top:.5em;
	margin-top:0;
	margin-bottom:0;
	}
	
li ol, li ul{
	padding:.1em 0 0 0;
	margin:0;
	}
	
li{
 	margin: .4em 0 0 4.5em;
	padding:0;
	line-height: 120%;
	}
	
dt{  
	font-weight:bold;
	margin:.75em 0 0 25px;
	padding:0;
	}
	
dd{
	margin: .4em 0 0 4em;
	padding:0;
	font-weight:normal;
	}
			
ul li p, ol li p{
	margin: 0;
	padding:.4em 0 0 0;
	font-weight:normal;
	}

.listhead li{
	font-weight:bold;
	margin:.75em 0 0 1.5em;
	}
	
.listhead li p{
	font-weight:normal;
	margin: 0;
	}
ol{list-style-type: decimal;}
ol.alpha{list-style:lower-alpha;}
ol.alphacap{list-style:upper-alpha;}
ol.roman{list-style:lower-roman;}
ol.romancap{list-style:upper-roman;}

ul{list-style-type: disc;}

.nolist{list-style: none;}
.nolist li{margin-left: 0;}

.greytext {
  color: #aaaaaa;
  font-size: 100%;
  height: 14px;
  line-height: 16px;
  }

.new{
	font-size:inherit;
	font-weight:bold;
	color:#FF0000;
	text-decoration:none;
	}
	
.trail{
	list-style:none;
	margin-left: 174px;
	padding:3px 0 0 3px;
	}

.trail li{
	display:inline;
	padding:0 0 0 0;
	margin:0;
	}
	
code{
	font-family: "Courier New", Courier, monospace;
	font-size: 100%;
	}
	
.code li{ 
	font-family: "Courier New", Courier, monospace;
	font-size: 100%;
	margin-top:.75em;
	}
	
.code li p{
	font-family:Arial, Helvetica, sans-serif;
	font-size: 100%;
	margin: 0;
	}	
	
.alert {
  border: 1px solid;
  padding: .9em;
  margin: 1em 0 1em 25px;
  background-color: #e5ecf9;
  border-color: #3366CC;
}

.alert p{padding:0; margin:0;}
	
.note {
	padding:.2em .5em .2em .9em;
	margin: 1em 0 0 25px;
	background-color: #efefef;
	border-top: #aaa 1px solid; 
	border-bottom: #aaa 1px solid; 
	}
		
.caution{
	padding:.2em .5em .2em .9em;
	margin: 1em 0 0 25px;
	background-color: #efefef;
	border-top: #ffcc33 1px solid;  
	border-bottom: #ffcc33 1px solid; 
	}

.warning{
	padding:.2em .5em .2em .9em;
	margin: 1em 0 0 25px;
	background-color: #efefef;
	border-top: #aa0033 1px solid;  
	border-bottom: #aa0033 1px solid; 
	}
	
.warning b, .warning em{
	color:#aa0033;
	}
	
ul li p.note, ul li p.warning, ul li p.caution,
ol li p.note, ol li p.warning, ol li p.caution{
	margin: .8em 0 0 0;	
	padding:.2em .5em .2em .9em;
	background-color: #efefef;
	border-top: #ccc 1px solid; 
	}
	
.sidebox .note, .sidebox .caution, .sidebox .warning{
	padding:.2em .5em .2em .7em;
	margin: 1em 0 0 25px;
	}

.notice {
	padding:.5em;
	margin: 1em 0 0 25px;
	background-color: #efefef;
	border-top: #fff; 
	}	
	
.notice form{
	padding:0;
	margin:0;
	}

form {
	padding:0;
	margin:0 0 0 25px;
	}
	
pre {
	background-color: #eee;
	border: 1px solid #bbb;
	color: #000000;
	font-family: "Courier New", Courier, monospace;
	font-size: 100%;
	margin: 1em 0 0 25px;
	padding: .9em;
	text-align:left;
	overflow: auto;
	}
	
li pre{
	margin: 1em 0 0 0;
	padding: .9em;
	}
	
blockquote {
	text-align:justify;
	padding:10px 20px 5px 20px;
	margin:1em 90px 0 70px;
	}
	
.sidebox blockquote {
	padding:15px 20px 0 20px;
	margin:5px 20px 5px 20px;
	}
	
#date{
	text-align:left;
	margin: 3em 0 0 1.5em;
	padding:0;
	font-style:italic;
	font-size:80%;
	}

/* ########## END FONT FORMATS ########## */

/* ######### (INDEX) UPDATES SECTION ########### */

table#updates {
	border:none;
	padding:0;
	}
	
table#updates td {
	border:none;
	padding:0;
	margin:0;
	}
	
table#updates div.section {
	border-top: 1px dotted silver;
	margin:1em 0 0 0;
	padding:5px 0 0 0;
	}
	
table#updates h2 {
	border:none;
	margin:0 0 .5em 0;
	padding:0;
	}
	
#updates .title {
	font-size:120%;
	margin:0;
	}
	
/* ------ blog feed section ------ */
	
#updates div.entry {
	margin:0 0 1.5em 0;
	}
	
#updates div.author {
	color:#999;
	margin:0 0 .5em 0;
	}
	
#updates .subscribe a, #updates .subscribe a:visited {
	float:right;
	color:#BB4900;
	text-decoration:none;
	}
	
#pagecontent #updates .subscribe a img {
	border:none;
	margin:0;
	padding:0;
	vertical-align:middle;
	}
	
#updates subscribe a span {
	color:#BB4900;
	text-decoration:underline;
	}
	
/* ------ examples section ------ */
	
#updates #featuredsection {
	padding:0 0 0 40px;
	}
	
#updates .project {
	margin-bottom:1.5em;
	width:330px;
	}
	
.screenshot {
	margin:0 auto;
	padding:0;
	text-align: center;
	}

.screenshot img {
	border:1px solid #3366CC;
	width:130px;
	height:108px;
	margin:0;
	}
	
#updates .project:after {
	clear:both;
	content:".";
	display:block;
	height:0pt;
	visibility:hidden;
	}
	
#updates p.snippet {
	padding:0;
	margin:0;
	}
	
#updates p.apis {
	padding:0;
	margin:.5em 0 0 0;
	}

.info ul {
	padding:0;
	margin:0;
	}

.info li {
	list-style:none;
	padding:0.6em 0 0 2em;
	margin:0;
	}	
	
/* ######### SECONDARY NAV ######### */

#secondnav {
	margin:20px 0 0 10px;
	padding:0;
	}
	
#secondnav table {
	border-top:none;
	border-left:none;
	border-right:none;
	border-bottom:solid 4px #C3D9FF;
	margin:0;
	padding:0;
	}
	
#secondnav th {
	background-color:#e5ecf9;
	font-weight:bold;
	margin:0;
	padding:0;
	text-align:center;
	border:0;
	border-collapse: collapse;
	}

#secondnav td {
	border:0;
	border-collapse: collapse;
	padding:0;
	margin:0;
	}
		
#secondnav a {
	text-decoration:none;
	color:#000;
	}
	
#secondnav .tc1 {
	background:transparent url(//code.google.com/images/corner_tl_sharp.gif) no-repeat scroll left top;
	height:4px;
	padding:0;
	margin:0;
	}
	
#secondnav .tcr {
	background:transparent url(//code.google.com/images/corner_tr_sharp.gif) no-repeat scroll right top;
	height:4px;
	padding:0;
	margin:0;
	}
	
#secondnav .h_link {
	padding:0 1em 2px;
	}
	
/* ########## MISCELLANEOUS ########## */
	
img {
	border:none;
	margin:0;
	}
	
.button {
  margin-top: 2px;
	}

.input input {

  width: 90%;
	}
	
hr{
	border: 1px solid;
	border-color: #3366CC;
	margin: 20px 10px 20px 10px;
	}
	
#pagecontent img{
	margin: 1em 0 0 25px;
	}

/* a11y */

.hidden, .hidden *, #skipto, #skipto *,
#skipto a, #skipto a:hover, #skipto a:visited {
  position:relative;
  top: -4444px;
  left: -4444px;
  height: 1px;
  width: 1px;
  overflow: hidden;
  z-index: 4444;
}

#skipto a:focus {
  position:fixed;
  top: 5px;
  left: 5px;
  height: auto;
  width: auto;
  background-color: white;
  border: 2px solid #0000CC;
  font-weight:bold;
  padding: 5px;
}

#disqus_thread,#recentcomments p { margin: 0 auto; margin-left:25px; }

#newsletter {
  margin-left: 25px;
  border: none;
}
#newsletter legend {
	margin: 1em 0 0 25px;
	padding:0;
  line-height: 120%;
}
#newsletter input {
  font-size: 120%;
  line-height: 120%;
}
#newsletter input[type=text] {
  border:1px solid #666;
  color:#666;
  font-size:120%;
  padding:4px 6px 4px 6px;
  width: 225px;
}

/* ########## END MISCELLANEOUS ########## */

/* ######### PRINT PAGE STYLE ########### */

@media print{

h1, h2, h3, h4, h5, h6 { /*keep headings with the text that belongs with them*/
	page-break-after: avoid;
	}
	
#sidenav, #footer { /* don't show page navigation */
	visibility:hidden;
	position:absolute;
	}
	
#pagecontent{  /* nudge page content over to fill page */
	float:left;
	position:relative;
	top:0;
	left:-175px;
	width:100%;
	}
	
#doc_title{  /* add another border since bg-color doesn't show */
	border-bottom:1px solid;
	padding-bottom:2px;
	}

pre {
  overflow: visible;
  text-wrap: unrestricted;
  white-space: -moz-pre-wrap; /* Moz */
  white-space: -pre-wrap; /* Opera 4-6 */
  white-space: -o-pre-wrap; /* Opera 7 */
  white-space: pre-wrap; /* CSS3  */
  word-wrap: break-word; /* IE 5.5+ */
}
	
.backtotop, #date{ 
	visibility:hidden;
	}

} /*end @media print*/

