/**
 * This CSS is for the layout template.
 */

/* == Start Base Styles == */

body {
	margin: 0;
	padding: 0;
	font-size: 10.5pt;
	font-family: sans-serif;
	background-color: #444;
}

a { text-decoration: none; }
a:link, a:visited { color: #0091DB; }
a:hover { text-decoration: underline; }
a img { border: none; }

h1 span,
h2 span,
h3 span,
h4 span {
    font-weight: normal;
}

/* == End Base Styles == */

#header h1,
#header h2,
#header ul,
#sidebar h2 {
	margin: 0;
	padding: 0;
}

#sidebar h2 {
	padding: 6px 4px 0px 4px;
}

#footer {
	background: #666666 url("../../images/theme/2010/grey/bottom_right.gif") bottom right no-repeat;
	clear: both;
	overflow: auto;
	font-size: .95em;
}

#footer h2 {
	color: #725423;
	margin: 10px 20px 0px 20px;
}

#footer a {
	color: white;
	text-decoration: none;
}

#footer a:hover {
	text-decoration: underline;
}

#footer ul,
#footer li {
	margin: 0;
	padding: 0;
}

#footer li {
	list-style-type: none;
	margin-left: 30px;
}

#footer li a {
	display: block;
	padding: 8px;
}

#footer li .active,
#footer li a:hover {
	background-color: #CFDFF0;
	color: black;
}

#footer div ul,
#footer div {
	float: left;
}

#footer #networks ul {
	width: 100%;
}

#footer #page-info {
    clear: both;
    float: none;
    color: black;
    text-align: center;
    padding: 10px;
    position: relative;
}

#footer #page-info p {
    position: absolute;
    left: 3px;
    bottom: 3px;
    color: #777;
	margin-bottom: 5px;
}

#page {
	margin: 0 auto;
	max-width: 1011px; /*929*/
	background: white url("../../images/theme/2010/grey/sidebar.gif") top right repeat-y;
	border-left: 2px solid #777;
	border-right: 2px solid #777;
	position: relative;
}

#header {
	position: relative;
	overflow: hidden;
}

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

#header h2 img {
	margin-left: auto;
}

#header h1 img,
#header h2 img {
	display: block;
}

#skip-nav {
	margin: 0 15px;
	padding: 10px;
	background-color: #ccc;
	position: absolute;
	top: 0;
	right: -15px;
}

#skip-nav li {
	padding: 10px;
}

#nav {
	background-color: #008AD5;
	margin: 0;
	padding: 5px 4px;
	overflow: hidden;
}

#nav li {
	float: left;
	list-style-type: none;
	margin: 0 2px;
	padding: 0;
}

#nav li a {
	display: block;
	padding: 8px 11px;
	color: white;
}

#nav .active a {
	background-color: white;
    color: black;
}

#nav li a:hover {
	background-color: #CFDFF0;
    color: black;
}

#nav .active a {
    color: black;
}

#nav .active a:hover {
	background-color: white;
}

#nav li a span {
    color: black;
    font-weight: bold;
    text-decoration: underline;
}

#sidebar {
	float: right;
	width: 274px;
	padding-bottom: 10px;
	background-color: white;
}

#sidebar h2 {
	background-color: #008AD5;
}

#featured-content {
	border-top: 1px solid #999999;
	background-color: #999999;
	padding: 3px 10px 0px 10px;
	position: relative;
}

#featured-content a {
	color: #0079C4;	
}

#featured-content h2 {
	margin-top: 5px;
	margin-bottom: 0;
}

#content,
#featured-content {
	margin-right: 288px;
	overflow: hidden;
}

#content {
	border-top: 1px solid white;
	padding: 0px 10px 10px 10px;
}

/** Hack to get Safari to behave */
#sidebar { margin-left: -288px; }

#featured-content p,
#content p {
	padding-left: 10px;
	padding-right: 10px;
	margin-top: 10px;
}

#featured-content p {
	color: #404040;
}

#pod-recent-blog-posts p {
	margin: 5px 0 10px 0;
}

#pod-conference-years .inline-list {
	margin: 0;
	padding: 10px 0 10px 0;
	text-align: center;
}

#pod-newsletter p,
#pod-newsletter div {
    padding: 5px;
	margin: 0;
}

#pod-newsletter .button {
    float: right;
    margin-right: 10px;
}

#pod-newsletter form {
    margin: 5px 0;
}

#pod-twitter-feed {
	font-size: .95em;
}

#pod-twitter-feed h2 {
	margin-bottom: 10px;
}

#pod-recent-blog-posts ul {
	margin: 3px 3px 3px 24px;
}

#pod-recent-blog-posts li {
	list-style-type: disc inside;
}

#pod-recent-blog-posts li a {
	padding: 3px 0 3px 0;
	display: block;
	font-size: .95em;
}

div.data-table {
	padding-left: 10px;
	padding-right: 10px;	
}

div.data-table table,
table.data-table {
	border: 1px solid black; 
	border-collapse: collapse;
	margin-bottom: 2em;
	background-color: #F7F7F7;
}

.data-table th {
	text-align: left;
	background-color: #CFDFF0;
	color: black;
    font-weight: normal;
	border: none;
	margin-top: 0;
}

.data-table td, .data-table th {
	border: 1px solid black;
	padding: 4px;
}

.inline-list li {
	display: inline;
	padding: 0;
}

.block-list {
	overflow: hidden;
}

.block-list li {
	float:left; 
	border: 1px solid #ccc;
	background-color: white;
	margin: 0;
	padding: .5em;
	height: 2.8em;
	width: 8em;
	font-size: .8em;
	list-style-type: none;	
}

.pod {
    overflow: hidden;
}
			
.pod dl, 
.pod dt, 
.pod dd {
	margin: 0;
	padding: 0;
}

.pod dl {
	margin: 0 10px 15px 10px;
}

.pod dl,
.pod dl a {
	text-decoration: none;
}

.pod dt {
	font-weight: bold;
}
			
.pod dd {
	margin-bottom: 8px;
}

.pod p {
    color: black;
    padding-left: 10px;
    padding-right: 5px;
    padding-top: 5px;
}

#attendees {
	margin-bottom: 20px;
}

#featured-content #speakers .block-list,
#featured-content #speakers h3,
#featured-content #speakers {
	background-color: #999;
	margin: 0 auto;
	padding: 0;
}

#featured-content #speakers .block-list li {
	width: 10em;
}

#featured-content #speakers h3 {
	padding-top: 3px;
	margin-bottom: 1.4em;
	/*TODO:height: 20px;*/
}

#featured-content #speakers .actions {
	font-size: 3em;
	line-height: 10px;
}

#featured-content #speakers .actions a {
	margin-top: 10px;
}

#featured-content #speakers #page-next {
	float: right;
}

#featured-content #speakers #page-prev {
	float: left;
}

#featured-content #speakers .block-list {
	padding-left: 10px;
	width: 600px;
	position: relative;
	top: -37px;
}

#speakers .block-list a,
#attendees .block-list a {
	padding-top: 10px;
	display: block;
	height: 156px;
}

#speakers .block-list a:hover,
#attendees .block-list a:hover {
	background-color: #F7F7F7;
}

#speakers .block-list,
#attendees .block-list {
	width: 625px;
	padding: 10px;
	margin: 0 auto;
}

#speakers .block-list li,
#attendees .block-list li {
	height: 166px;
	width: 10.5em;
	text-align: center;
	margin: 1px;
	border: 2px solid #ededed;
	padding: 0;
}

#speakers .block-list img,
#attendees .block-list img {
	display: block;
	margin: 0 auto 5px auto;
	border: 1px solid #ccc;
}

#attendees .block-list .type {
	display: block;
	margin-top: 3px;
	color: black;
}

#attendees .block-list .type-speaker {
	border: 2px solid #F8990F;
}


#content .actions,
#attendees .actions {
	margin-top: 10px;
	margin-right: -10px;
	overflow: hidden;
	background-color: #008AD5;
	padding: 5px 15px 5px 5px;
}

#attendees .actions form {
	padding: 4px;
}

.pages {
	margin: 8px 0 8px 0;
	padding: 0;
	float: right;
}

.pages li {
    list-style-type: none;
    display: inline;
    margin: 0;
}

.pages li a {
    padding: 5px;
    border: 1px solid #ccc;
	background-color: #f7f7f7;	
}

.pages .active a {
    background-color: #0091DB;
	color: white;
}

.actions .pages li a {
    padding: 5px;
	color: white;
  	border: none;
	background-color: transparent;
}

.actions .pages .active a {
    color: black;
    background-color: #CFDFF0;
}

.aside {
	float: right;
	text-align: center;
    margin: 0 10px 10px 10px;
    color: white;
}

#track-list li p {
	font-size: .8em;
	margin: 2px 0px 2px 5px;
}

#schedule .day {
	font-size: .95em;
}

#schedule .day .special-session {
	background-color: #B0D7EC;
}

#schedule .day .start-time,
#schedule .day .end-time {
	white-space: nowrap;
}

#schedule .day  tr:nth-child(even) {
	background-color: #ffffff;
}

#speakers-detail,
#speakers .speaker,
#tracks .track {
	margin-right: -10px;
}

#attendee-detail .header,
#speaker-detail .header,
#speakers .speaker h3,
#tracks .track h3 {
	background-color: #008AD5;
	padding: 10px;
	color: white;
}

#attendee-detail .header h3,
#speaker-detail .header h3 {
	margin: 0;
}

#attendee-detail .header,
#speaker-detail .header {
	margin-top: 5px;
	margin-right: -10px;
	margin-bottom: 20px;
}

#attendee-detail h3 a,
#speaker-detail h3 a,
#speakers .speaker h3 a {
	color: white;
}

#attendee-detail p,
#attendee-detail h4,
#speaker-detail p,
#speaker-detail h4,
#speakers .speaker p,
#speakers .speaker h4 {
	margin-left: 10px;
}

#attendee-detail img,
#speaker-detail img,
#speakers .speaker img {
	float: left;
	margin: 0 10px 10px 10px; 
	border: 1px solid #ccc;
}

#attendee-detail h4,
#speaker-detail h4,
#speakers .speaker h4 {
	clear: left;
}

#speaker-detail .topic-list,
#speakers .speaker .topic-list {
	margin-top: 5px;
	list-style-type: none;
}

#speaker-detail .topic-list li,
#speakers .speaker .topic-list li {
	padding: 3px;
}

#tracks .topic {
	margin: 10px;
}

#tracks .topic h4 {
	background-color: #dedede;
	padding: 10px;
}

#tracks .topic h5 {
	font-size: .9em;
	padding: 5px 5px 0 5px;
}

#tracks .topic .infobar {
	padding: 0 5px 5px 5px;
}

#comments {
	margin-left: 10px;
    border-top: 1px solid #ccc;
	padding-top: 10px;
	clear: left;
}

#comment-form {
    margin: 20px 10px 10px 10px;
}

#comment-form p {
	margin-left: 0;
}

.communitycomment {
    padding: 5px;
    margin: 0px 10px 10px 10px;
    border: 1px solid #ccc;
}

.communitycomment h6 {
    font-size: .8em;
}

.communitycomment h6 .info {
    float: right;
    color: #ccc;
}

legend {
    padding: 5px 10px;
    text-decoration: underline;
}

input.confirm {
    width: 90%;
    display: block;
    margin: 0px auto;
}

.field {
	padding: 3px;
}

.field p {
    padding-left: 5px;
}

.field-error {
    border: 1px solid #F7AF1D;
    background-color: #FDE4A5;
}

.captcha .field {
	margin-bottom: 5px;
}

.input-table .captcha label {
	text-align: left;
	margin-bottom: 5px;
	display: block;
}

#contact-form .input-table .captcha input,
.input-table .captcha input {
	width: auto;
}

.input-table {
    border-collapse: collapse;
}

.input-table td {
    padding: 3px 6px;
	border: none;
}

.input-table td p {
    padding-left: 10px;
}

.input-table th {
    font-weight: normal;
    text-align: left;
    padding-left: 4px;
	border: none;
}

.input-action {
    float: right;
}

.input-date div,
.input-confirm div {
    display: inline;
    padding: 5px;
}

#contact-form {
	float: left;
}

#contact-form .input-table {
	margin-bottom: 0;
}

#contact-form .field-error label {
	color: black;
}

#contact-form td {
	padding: 0;
}

#contact-form label {
	text-align: right;
	display: block;
	white-space: nowrap;
	margin-right: 10px;
}

#contact-form table input,
#contact-form table textarea {
	width: 300px;
}

#contact-form table textarea {
	height: 150px;
}

#contact-form .submit {
	width: 10em;
	margin: 5px 10px 10px 48px;
}

#contact-info h3 {
	margin: 0;
	color: #4f4f4f;
}

#contact-info {
	background-color: #ccc;
	padding: 5px;
	margin-top: 45px;
	text-align: left;
}

#starburst {
	position: absolute;
	top: -38px;
	right: -28px;
	z-index: 100;
}

#sponsors .sponsor {
	margin: 0 0 20px 0px;
	padding-left: 150px;
	padding-bottom: 5px;
	overflow: hidden;
	border-bottom: 1px solid #ccc;
}

#sponsors .sponsor .badge {
	float: left;
}

#sponsors h4 {
	margin-left: -150px;
}

#sponsors h4 img {
	vertical-align: middle;
}

#sponsors h4 a {
	display: block;
	margin-left: 150px;
	margin-bottom: 8px;
}

#topic-detail h3,
#sponsors h3,
#schedule h3 {
	padding: 10px;
	margin-right: -10px;
	background-color: #008AD5;
	color: white;
}

#topic-detail h3 a {
	color: white;
}

#topic-detail .schedule-blocks {
	border: none;
	margin: 5px 5px 10px 5px;
}

#topic-detail .schedule-blocks td {
	border: none;
	padding: 2px 5px;
}

#sponsors .banner-image {
	text-align: center;
}

.alert p img {
	float: left;
	margin: 1em;
}

.alert {
	margin-bottom: 1em;	
}

.alert p {
	margin-bottom: 1em;
}

#content div.alert {
	background-color: #F3F8FF;
	border: 1px solid #D0D0D0;
	padding: 5px;
	margin-top: 10px;
}

#content div.alert h2 {
	margin: 5px 0 10px 0;
	padding-left: 5px;
	font-size: 1.3em;
}

#content div.alert h3 {
	margin: 5px 10px;
}

#content div.alert p {
	padding: 0px 15px;
}

/**
 * This CSS is specific to certain pages.
 */
 
#page-default-index #featured-content {
	background-image: url("../../images/theme/2010/grey/shadow_person.gif");
	background-position: top left;
	background-repeat: no-repeat;
	padding-bottom: 10px;
}

#twitter-headline {
	position: relative;
	overflow: hidden;
	margin: 2px 0 0 130px;
	background: url("../../images/theme/2010/grey/bubble_middle.gif") top left repeat-x;
}

#twitter-headline h2 {
	background: url("../../images/theme/2010/grey/bubble_right_side.gif") top right no-repeat;
	padding: 15px 15px 4px 0;
	height: 60px;
	font-size: 1em;
}

#twitter-headline a {
    float: right;
    margin-right: 20px;
}

#icons {
    margin: 10px 8px 15px 120px;
	overflow: hidden;
}

#icons ul {
    margin: 0 auto;
    padding: 0;
    max-width: 560px;
}

#icons li {
	list-style-type: none;
	background: url("../../images/theme/2010/grey/imagebox_with_shadow.gif") top left no-repeat;
	padding: 13px;
	float: left;
    margin-left: 15px;
}

#page-default-index #featured-content h2 {
    color: black;
    margin: 0;
    text-transform: none;
}
			
#page-default-index #featured-content p {
	font-size: 1.4em;
	margin-left: 150px;
	margin-right: 5px;
}

#page-default-index #featured-content p a {
	display: block;
	margin: 10px 0;
}

#featured-blog-posts h2,
#featured-blog-posts h3 {
	padding: 7px;
}

#featured-blog-posts h2 {
	background-color: #008AD5;
	font-size: 1.2em;
	margin-right: -10px;			
}

#featured-blog-posts h3 {
	margin-bottom: 10px;
	font-size: 1em;
}

#featured-blog-posts h2 a {
	color: white;
}

#featured-blog-posts h2 a:hover {
	color: black;
}

#featured-blog-posts ul {
	margin: 5px 0;
	padding: 0;
}
			
#featured-blog-posts li {
	margin: 0 10px 0 10px;
	list-style-type: none;
	font-size: .8em;
}
			
#featured-blog-posts p {
	margin: 10px;
}

ul#topics li {
	margin-top: 5px;
}

#breadcrumbs {
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 10px;
}

#register-content .field p {
	margin-bottom: 0;
}

#featured-content .actions,
#content .actions {
	float: none;
	margin-top: 5px;
	padding: 5px;
}

#featured-content .actions .extra,
#content .actions .extra {
	float: right;
}

a.button,
.button {
	color: white;
	padding: 8px 8px;
	margin: 2px;
	line-height: 2em;
}

.actions .active {
	background-color: white;
	color: black;
}

#speaker-detail .header .actions,
#attendee-detail .header .actions {
	margin-top: -10px;
	float: right;
}

#speaker-detail .header .actions .button,
#attendee-detail .header .actions .button {
	background-color: white;
	color: black;
	border: 2px solid #008AD5;
	display: block;
	padding: 4px;
	margin: 0;
	font-size: .9em;
	letter-spacing: 1px;
}

#sponsorship-levels {
	font-size: 0.8em;
}

#sponsorship-levels .dimension {
	white-space: nowrap;
}

#sponsorship-levels th {
	width: 150px;
}

.footnotes,
.footnotes li {
	list-style-type: none;
}

.schedule .room {
	white-space: nowrap;
}
