body {margin: 0; padding: 0; background: #f2f2f2 url(../images/body_bg0.gif) repeat-x top; text-align: center; font: 12px 'Lucida Grande', Geneva, Arial, Verdana, sans-serif; color: #76797c;}
table, td {font: 10px 'Lucida Grande', Geneva, Verdana, Arial, sans-serif; color: #76797c;}
a:link, a:visited {color: #164fa0; text-decoration: none;}
a:hover, a:active {text-decoration: underline;}

#adcheader {position: relative; font-size: 10px; color: #2e2e2e; height: 85px; width: 820px;}
#adcheader #adclogo {position: absolute; top: 19px; left: 11px;}
#adcheader #search {position: absolute; top: 22px; right: 10px; margin: 0;}
#adcheader #membership {position: absolute; top: 61px; left: 10px;}
#adcheader #membership img {vertical-align: -4px}
#adcheader #rightlinks {position: absolute; top: 61px; right: 10px;}
#adcheader span {color: #a1a5a9; font-size: 13px;}

#breadcrumb {font-size: 10px; padding: 0; margin: 10px auto 20px; color: #333; border-bottom: 1px solid #c8c8c8; padding-bottom: 20px; width: 800px;}

#wwdcheader {padding-top:5px;}
#adcheader, #wwdcheader, #main, #footer {width: 820px; margin: 0 auto; text-align: left;}
#main #top {background: url(../images/main_bg_.gif) no-repeat; height: 262px; margin:0 -25px 0 -25px; }
#main {background: white url(../images/main_bg0.gif) top left repeat-y; width:770px; padding:0 25px 0 25px; }
#main #mainfooter {background: url(../images/mainfoot.gif) no-repeat bottom; height: 35px; margin:0 -25px 0 -25px; clear: both;}

#main div.column {text-align:left; margin-bottom:0; margin-top:14px; position:relative; top:-261px; margin-bottom:-261px; }
/*\*//*/ *html #main div.column { margin-top:-247px; margin-bottom:0; } /**/
body.ada #main div.column {top:-14px;}
/*\*//*/ *html body.ada #main div.column { margin-top:-115px; margin-bottom:0; } /**/
body.ada #main div.column.bottom {margin-top:6px; }

#main p {margin: 0 0 1em 0;}
#main p.last {margin: 0;}
#main p.intro {font-weight: bold;}
#main .lite {color: #79767c;}
#main h1 {font-size: 25px; margin:.3em 0 .4em 0; color:#000; }
.sessions #main h1 { color: #000; font-size: 16px; margin: 0.3em 0 0.6em; }
#main h2 {margin-left: 0; margin-bottom: 5px; margin-right: 0; margin-top: 2px; font-size: 14px; color:#000; }
#main h3 {font-size: 12px; margin:0; color:#76797c; }
#main .more {text-align: right;}

#main a.pdf {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}
#main a.html {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}
#main a.qt {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}
#main a.ical {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}
#main a.dl {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}
#main a.dmg {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}
#main a.zip {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}
#main a.keynote {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}
#main a.audio {background: url(globalic.gif) left top no-repeat; display: block; padding-left: 20px;}

#main .subcolumn1-2 {float: left; width: 375px;}
#main .subcolumn2-2 {float: right; width: 375px;}
#main .subcolumn1-3, #main .subcolumn2-3, #main .subcolumn3-3 {width: 212px; float: left;}
#main .subcolumn1-3, #main .subcolumn2-3 {margin-right: 20px;}

#content {float:left; width:520px;}
#content.fullwidth {float:left; width:770px;}

#content .subcolumn1-2 { float:left; width: 245px;}
#content .subcolumn2-2 { float:right; width: 245px;}
#content .subcolumn1-3, #content .subcolumn2-3, #content .subcolumn3-3 { width:135px; float:left; }
#content .subcolumn1-3, #content .subcolumn2-3 { margin-right:22px; }

#sidebar {float:right; width:225px; font-size: 10px; margin:0 -4px 0 0; padding:0; }
*html #sidebar {margin-right: -7px;}
/*\*//*/ *html #sidebar {margin-right: -14px;} /**/
#sidebar h2 {font-size: 12px; margin: 0;}
#sidebar h3 {font-size: 12px; font-weight: normal; margin: 0 0 5px; color: black;}
#sidebar h4 {font-size: 10px; margin: 0;}

#sidebar .faqbox { background: url(faq_midd.gif) left repeat-y; width:215px; padding:5px 10px 0px 10px; margin:-10px -10px -5px 0; }
#sidebar .sidebox { width:215px; padding:10px 10px 5px 10px; border-bottom:1px solid #d9d9d9; margin:-10px 0 10px 0; }
#sidebar .button { padding:0; margin:0 0 5px 0; border:none; }
#sidebar #image1 { margin-top: -11px;}


img.left {float:left; margin: 2px 10px 5px 0; border: 0;}
img.right {float: right; margin: 2px 0 5px 10px; border: 0;}
img.across {margin: 0 0 10px 0; border: 0;}

ul {list-style: none outside; margin: 0; padding: 0 0 1em 0;}
ul.square {list-style: square outside; margin: 0 0 0 16px; padding: 0 0 1em 0;}
ul.circle {list-style: circle outside; margin: 0 0 0 16px; padding: 0 0 1em 0;}
ul.arrow {list-style-image: url(arrow000.gif); margin: 0 0 0 16px; padding: 0 0 1em 0;}
ol {list-style: decimal; margin: 0 0 0 2.8em; padding: 0 0 1em 0;}
li {padding-bottom: .3em;}
ul ul.circle {margin-top: .3em;}
ul ul.square {margin-top: .3em;}

ol.last {padding: 0;}
ul.last {padding: 0;}
dl.last {padding: 0;}
li.last {padding: 0;}

sup {vertical-align: baseline; font-size: 1em; color: #76797c;}

.sosumi {font-size: 10px !important; color: #76797c;}
ol.sosumi {margin-left: 0; padding-left: 1.5em; clear: both;}

#footer {text-align: center; clear: both; font-size: 10px; padding: 0 0 15px; color: #76797c;}

div.clearer, div.clearer-notie {clear: both; display: block; margin: 0; padding: 0; height: 0; line-height: 1px; font-size: 1px;}
/*\*/ *html div.clearer-notie { clear:none; display:none; margin:0; padding:0; height:0; line-height:1px; font-size:1px; } /**/

#main form {margin: 0;}
#search select, #search input {font-size: 10px; color: #76797c}
#search input.sbox { height: 12px; width: 130px; border: 0; background: white url(searchfi.gif) repeat-x left top; padding: 3px;}
#search select {width: 122px; margin-top: 5px;}
#search .srchimgs {margin-bottom: 1px;}
html>body #search .srchimgs {margin-bottom: 0;}
/*\*/
html>body*#search input {font-size: 12px}
html>body*#search .srchimgs {display: none;}
html>body*#search input.sbox {width: 150px;}
/**/

/* FAQ PAGES */
#content.faq h2 { font-size:18px; margin:1.6em 0 .8em 0; }
.faq ol li { padding-bottom:1em; color:#444; font-weight:bold; }
.faq .answer { display:block; font-weight:normal; color:#76797c; padding:0 0 .6em 0; }
.faq ul.answer { padding:.4em 0; margin-left:24px; }
.faq ul.answer li { font-weight:normal; color:#76797c; padding:0 0 .4em 0; }
.faq .last { padding-bottom:0 !important; margin-bottom:0 !important; }


/* SESSIONS and LABS */
.sessions #main h2.sessionfilter, .labs #main h2.sessionfilter {font-size: 14px; color: #333;}

body.sessions table.sessions { width: 515px; font-size: 11px; position: inherit; top: -100px; margin-top: 5px; margin-bottom:-100px; float:left; }
table.sessions { font-size: 11px; margin-top: 5px; margin-bottom: -100px; position: relative; top: -100px; width: 770px; float: left; }
/*\*//*/ *html table.sessions { margin-top:-99px; margin-bottom:0; } /**/
table.sessions tr.sortrow th {text-align: left; background: #c2c2c2; border-bottom: 1px solid white; color: #111;  border-top: none; white-space:nowrap;}
table.sessions tr.sortrow th a {color: #0d5b92}
table.sessions tr.sortrow th.sortcolumn {background: #a2a2a2}
table.sessions tr th.sortcolumn {background: #ddd}
table.sessions tr th.sortcolumn a {color: #333; text-decoration: none; cursor: default;}

table.sessions th {padding: 4px 8px; text-align: left; background: #efefef; color: #333; border-top: 1px solid #c2c2c2}
table.sessions th.number {white-space: nowrap; width:66px;}
table.sessions th.track {white-space: nowrap; width: 152px;}
table.sessions th.session {white-space: nowrap; width: 135px;}
table.sessions td {padding: 0; vertical-align: top;}
table.sessions td div.description {padding: 3px 8px 8px; font-size: 11px; /* display: none; */}
table.refinebox {margin-top: 20px; border: 1px solid #e2e2e2; position:relative; top:-100px; }
table.refinebox td {vertical-align: top; padding: 7px 10px 4px; background: #f9f9f9}
table.refinebox h3 {display: inline}
table.refinebox td.filter {border-left: 1px solid #e2e2e2; width: 65%; padding-top: 6px}
table.refinebox select {width: 180px;}
body.sessions #sidebar div {display: none;}
body.sessions #sidebar div#buynow {display: block}
body.labs #sidebar div {display: none;}
body.labs #sidebar div#buynow {display: block}
body.schedules #sidebar div {display: none;}
body.schedules #sidebar div#buynow {display: block}

table.sessions td div.description { min-height:44px; }
/*\*/ *html table.sessions td div.description { height:44px; display:table-cell; width:667px; } /**/
*html table.sessions td div.description { height:44px; }
#wwdcheader img {display:block;}

/* WWDC NAV */
#localnav { width:798px; height:28px; font-size:12px; margin:0 -14px 0 -14px; position:relative; top:-261px; }
#localnav td a {
	background:#4b8dbb url(../images/localnav.gif) repeat-x left top;
	display:block;
	width:100%;
	height:1.8em;
	padding:6px 0 0 0;
	text-align:center;
	color:#fff;
	font-size:12px;
	text-shadow:#333 0 1px 3px;
}
#localnav td a:hover { background-color:#326fa3; background-position:left -81px; text-decoration:none; }
#localnav td.active a { background-color:#81afd0; background-position:left -162px; color:#000; text-shadow:none; }
#localnav td.active a:hover { background-color:#81afd0; background-position:-162px left; }

#localnav td#labs, #localnav td#faq { width:100px; }

body.sessions #localnav td#sessions a,
body.labs #localnav td#labs a,
body.schedules #localnav td#schedules a,
body.registration #localnav td#registration a,
body.specialevents #localnav td#specialevents a,
body.links #localnav td#links a,
body.students #localnav td#students a,
body.faq #localnav td#faq a { background-color:#81afd0; background-position:left -162px; color:#000; text-shadow:none; }

body.sessions #localnav td#sessions a:hover,
body.labs #localnav td#labs a:hover,
body.schedules #localnav td#schedules a:hover,
body.registration #localnav td#registration a:hover,
body.specialevents #localnav td#specialevents a:hover,
body.links #localnav td#links a:hover,
body.students #localnav td#students a:hover,
body.faq #localnav td#faq a:hover { background-color:#81afd0; background-position:-162px left }

body.sessions.inactive #localnav td#sessions a,
body.labs.inactive #localnav td#labs a,
body.schedules.inactive #localnav td#schedules a,
body.registration.inactive #localnav td#registration a,
body.specialevents.inactive #localnav td#specialevents a,
body.links.inactive #localnav td#links a,
body.students.inactive #localnav td#students a,
body.faq.inactive #localnav td#faq a { cursor:text; }

#sessiontypes_small {font-size: 10px; color: #555555}
#sessiontypes_small p { min-height:51px; padding: 12px 10px 0 55px; margin-bottom: 0; line-height: 14px; positioin: relative}
/*\*/ *html #sessiontypes_small p { height:51px; display:table-cell;} /**/
*html #sessiontypes_small p { height:51px; }
#sessiontypes_small p#promo_presentation {background: url(promo_pr.gif) no-repeat top left;}
#sessiontypes_small p#promo_handson {background: url(promo_ha.gif) no-repeat top left;}
.smalltext {font-size: 10px !important;}

/* schedules pages definitions */
.schedules #main h2 {font-size: 20px; color: #76797c; margin-top: 0; margin-bottom:20px;}
/* days table */ 
.days { border-bottom: 1px solid #a1a5a9; border-right: 1px solid #a1a5a9; margin-bottom: 24px; margin-top: 20px; width: 98%;}
.days td, .days th { font-size: 11px;  text-align: center; padding: 4px; background: #f9f9f9; border-top: 1px solid #a1a5a9; border-left: 1px solid #a1a5a9; text-align: center; color: #444}
.days th { font-weight: bold; background: #EEEFF0; color: #444; border-top: 1px solid #a1a5a9;}
.days td.first.type, .days th.first { border-left: 1px solid #a1a5a9; border-top: 1px solid #a1a5a9;}
.days tr.afternoon td { border-top: none ;}
.days td.active { background: #74a6cb; color: white; }
.days td.active a, .days td.active a:hover { color: white; cursor:text; text-decoration:none; }
.days .type { border-left: 1px solid #a1a5a9; border-top: 1px solid #a1a5a9; background: #EEEFF0; font-weight: bold; color: #444; }
.days .empty { background: #FFF; border-top: none; border-left: none; }
/* calendar table */ 
.calendar { width:770px; border-bottom: 1px solid #a1a5a9; border-right: 1px solid #a1a5a9; vertical-align: top; margin-top:-46px; margin-bottom:2.6em; }
.calendar th { color: #444; border-top: 1px solid #a1a5a9; border-left: 1px solid #b2b2b2; background: #EEEFF0 url(../images/calendar.gif) repeat-x top left; padding: 6px 8px; font-size: 10px; text-align: center; }
.calendar td { width:163px; border-left: 1px solid #CCCFD0; border-top: 1px solid #CCCFD0; padding: 6px 8px; font-size: 10px; font-weight: bold; color: #FFF; height: 50px; vertical-align: top; text-align: left; white-space:normal; }
.am .calendar td { width:217px; }
.calendar .empty, .am .calendar .empty { background: #FFF !important; border-top: none !important; border-left: none !important; }
.calendar .location, .am .calendar .location { width:88px; border-left: 1px solid #a1a5a9; border-top: 1px solid #CCCFD0; background: #EEEFF0; font-weight: bold; color: #444; }
.calendar .first, .am .calendar .first { border-top: 1px solid #a1a5a9; border-left: 1px solid #a1a5a9; }
.calendar .rooms, .am .calendar .rooms { width:30px; vertical-align: middle; text-align: center; padding: 0; background: #EEEFF0 url(../images/calendas.gif) repeat-y top left; }
.calendar .middle { vertical-align:middle; }
.calendar .special, .colorkey .special { color: #444; font-weight: normal; background: #f9f9f9}
.calendar .special a:link, .calendar .special a:visited {color: #164fa0; text-decoration: none;}
.calendar .special a:hover, .calendar .special a:active {text-decoration: underline;}
.calendar .special a:hover, .calendar .special a:active { color: #f60; text-decoration: underline; }
.calendar .tba, .colorkey .tba { color: #A9A9A9; font-weight: normal; }
.calendar .general, .colorkey .general { background: #493f6c; }
.calendar .apptech, .colorkey .apptech { background: #0f638A; }
.calendar .graphics, .colorkey .graphics { background: #61AEAC; }
.calendar .devtools, .colorkey .devtools { background: #A9B44C; }
.calendar .osfoundations, .colorkey .osfoundations { background: #E0C030; }
.calendar .infotech, .colorkey .infotech { background: #BF8E25; }
.calendar a:link, .calendar a:visited { color: #FFF; font-weight: bold; text-decoration: none; }
.calendar a:hover, .calendar a:active { color: #FFF; font-weight: bold; text-decoration: underline; }
/* legend table */
.colorkey { width:770px; border-bottom: 1px solid #a1a5a9; border-right: 1px solid #a1a5a9; vertical-align: top; color: #444; margin-bottom:2em;  }
.colorkey th { border-top: 1px solid #a1a5a9; border-left: 1px solid #a1a5a9; font-size: 11px;  text-align: center; padding: 4px; text-align: center; font-weight: normal; background: #f9f9f9; }
.colorkey td { border-left: 1px solid #CCCFD0; border-top: 1px solid #CCCFD0; padding: 6px 8px; font-size: 10px; vertical-align: top; text-align: left; color: #444; }
.colorkey td.first { border-left: 1px solid #a1a5a9; }
.colorkey div.key { border:1px solid #CCCFD0; width:8px; height:8px; line-height:8px; font-size:8px; padding:0; margin:1px 6px 0 0; float:left; }
