/******* Global *******/

/* Reset Global Styles */
html, body, div, span, object, h1, h2, h3, h4, h5, h6, p, blockquote, cite, a, abbr, acronym, address, em, strong, img, dl, dt, dd, ol, ul, li, form, fieldset, legend, label, table, caption, tbody, tfoot, thead, tr, th, td { padding: 0; border: 0; outline: 0; margin: 0; font-size: 1.0em; font-weight: inherit; font-family: inherit; font-style: inherit; vertical-align: baseline; }
ol, ul { list-style: none; }
table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }

/* Link Styles */
a { color: #33C; font-weight: bold; text-decoration: none; }
a:visited { color: #009; }
a:hover { text-decoration: underline; }

/* Headers */
h1 { margin-bottom: 1.0em; font-size: 1.1429em; font-weight: bold; }
h2 { clear: both; border-bottom: 1px solid #666; font-size: 1.5em; line-height: 1.2; }
h2 a, h2 a:visited { font-weight: normal; color: #33C; border: none; }
h2 a:hover { color: #33C; }
h3 { font-weight: bold; }

p { margin: 1em 0; }

/* Base Text Style */
body { font: 14px/1.5 Georgia, "Times New Roman", serif; color: #333; }

/******* Layout *******/

html { height: 100%; background: url("/images/header.png") 0 0 repeat-x; }
body { height: 100%; }

/* Primary Structural Sections */
#container { position: relative; width: 760px; margin: 0 auto; min-height: 100%; }
#header { position: relative; height: 72px; }
#content { float: left; width: 760px; padding-top: 20px; padding-bottom: 20px; }
#main { position: relative; clear: both; float: left; width: 480px; margin-right: 40px; }
#sidebar { float: left; width: 240px; }
#footer { clear: both; margin-top: -2.5em; }

* html #container { height: 100%; padding-bottom: 2.5em; }
* + html #content {  }
* + html #footer { margin-top: -2.5em; }
* html li { height: 1%; }

/******* Header *******/

#header h1 { padding-top: 4px; line-height: 64px; font-size: 3.0em; color: #FFF; text-shadow: 0 -1px 0 #333; }
#header h1, #header address a { display: block; height: 64px; border: none; padding-top: 4px; line-height: 0; text-indent: -1000em; background: url("/images/matthewlevine.png") left center no-repeat; }

#header #navigation { position: absolute; top: 4px; right: 0; }
#header #navigation li { float: left; font: 10px "Lucida Grande", "Helvetica Neue", Helvetica, Arial, sans-serif; padding: 5px 8px; color: #FFF; text-shadow: 0 -1px 0 #333; }
#header #navigation li.current { background: url("/images/current.png") left top no-repeat; padding: 0 0 0 10px; }
#header #navigation li.current span, #header #navigation li.current a { float: left; height: 18px; padding: 5px 10px 0 0; background: url("/images/current.png") right top no-repeat; }
#header #navigation li a { display: block; padding: 1px 4px; color: #FFF; text-decoration: none; }
#header #navigation li a:hover { background: #FFF; color: #666; text-shadow: none; }
#header #navigation li.current a:hover { background: url("/images/current.png") right top no-repeat; color: #FFF; text-shadow: 0 -1px 0 #333; text-decoration: underline; }

/******* Content *******/

#content { }

#content .feed { position: absolute; right: 0; line-height: 1.1429em; }
#content .feed img { margin-bottom: -1px; }
#content .feed:hover { text-decoration: none; border-bottom: 1px dotted #33C; }

#content #comments ol { border-top: 1px solid #666; margin-bottom: 2em; }
#content #comments li { padding: 10px; border-bottom: 1px solid #666; margin: 0; }
#content #comments li.odd {  background: #E6E6E6; }

#content address { float: left; width: 760px; }

/******* Main Column *******/

/******* Sidebar *******/

#sidebar h2 { margin-top: 20px; }
#sidebar h2:first-child { margin: 0; }
#sidebar ul, #sidebar ol { margin: 0.5em 0; }
#sidebar p { margin-top: 0.8em; }


/******* Footer *******/

#footer { background: url("/images/footer.png") left top repeat-x; line-height: 2.5em; color: #FFF; text-shadow: 0 -1px 0 #333; }
#footer ul { position: relative; width: 760px; margin: 0 auto; }
#footer li { display: inline; }
#footer a { font-weight: normal; color: #FFF; border-color: #FFF; }

/******* General Content Formatting *******/

#hcard { font-size: 1.35em; margin-bottom: 1em; }
.vcard .photo { float: right; margin: 0 0 1em 1em; border: 1px solid #666; padding: 1px; }
.vcard a.fn { font-weight: normal; color: #333; border-color: #333; }

/* hAtom */
.hfeed { margin: 0; }
.hentry { margin-bottom: 2em; }
.entry-title { border-bottom: 1px solid #666; margin-bottom: 0; font-size: 1.5em; font-weight: normal; line-height: 1.2; }
.meta { font-size: 0.85em; color: #666; }
.meta ul, .meta ol { display: inline; }
.meta li { display: inline; }
.meta a { font-weight: normal; }
.entry-content { margin-top: 1em; }
.entry-content ol { list-style: decimal; margin-left: 2em; }
.entry-content li { margin-bottom: 1em; }

.meta form, .meta fieldset { display: inline; }
.meta form button { padding: 0; border: 0; margin: 0; background: transparent; font-family: inherit; font-size: inherit; cursor: pointer; color: #33C; }
.meta form button:hover { text-decoration: underline; }

/* Form controls */
form div { padding-left: 6em; margin-top: 1em; }
form div.submit { margin-top: 0; }
form div label { float: left; margin-left: -6em; width: 5em; text-align: right; font-weight: bold; }
form div.full input, form div.full textarea { width: 100%; }
form .action { margin-left: 0.5em; }
form li { margin-bottom: 1em; }
form li label { display: block; font-size: 0.8571em; line-height: 1.0em; }

#login div { padding: 0; margin: 0 0 1em 0; }
#login .type { margin: 0; font-size: 0.85em; }
#login .type label { float: none; display: inline; margin: 0; width: auto; font-weight: normal; }

.error { padding: 1em; border: 1px solid #f00; margin: 1em 0; background: #fcc; }
.error h2 { font-size: 1.2857em; margin-bottom: 0.5556em; }
.error ol { list-style: decimal; font-size: 0.8571em; }
.error li { margin-left: 2em; }
#content .error p { margin: 0; }

/* hResume */

#resume h2 { padding: 4px 0 3px 0; border-top: 2px solid #333; border-bottom: 1px solid #666; margin: 2em 0 1em 0; font-size: 1.0em; font-weight: bold; text-transform: uppercase; letter-spacing: 2px; }
#resume h3 { font-size: 1.0em; font-weight: normal; margin-top: 1em; }
#resume h3 a { font-weight: bold; color: #333; text-decoration: none; }
#resume h3 a:hover { text-decoration: underline; }
#resume p { margin: 0; }

#resume .summary { list-style: disc; }

#resume .experience .location, #resume .experience .dates { float: right; width: 15em; margin-top: -1.5em; color: #666; }
#resume .experience .title { font-style: italic; }
#resume .experience ul { clear: both; padding-right: 0; list-style: disc; }

#resume .education .location, #resume .education .dates { float: right; width: 15em; margin-top: -1.5em; color: #666; }
#resume .education .title { font-style: italic; }
#resume .education .description h4 { display: inline; font-weight: normal; }
#resume .education .description ul, #resume .education .description li { display: inline; }
#resume .education .description li:after { content: ","; }
#resume .education .description li:last-child:before { content: "and "; }
#resume .education .description li:first-child:before { content: ""; }
#resume .education .description li:last-child:after { content: ""; }

#resume .conferences .education .dates { display: block; float: none; margin: 0; }

#resume .publications .dtstart { color: #666; }
#resume .publications li { margin: 1em 0; }

#resume .skills h3 { display: inline; font-weight: normal; }
#resume .skills li { margin: 1em 0; }
#resume .skills li ul, #resume .skills li li { display: inline; margin: 0; }
#resume .skills h3:after { content: ":"; }
#resume .skills li li:after { content: ","; }
#resume .skills li li:last-child:after { content: ""; }
#resume .skills a { color: inherit; }

* + html #resume { margin-bottom: 2em; }
* html #resume .education .description li, * + html #resume .education .description li { margin-left: 0.35em; }
* html #resume .skills li li, * + html #resume .skills li li { margin-left: 0.35em; }

/* Goals
============================================================================= */

#recent-goals { width: 100%; font: 1.0em "Helvetica Neue", Helvetica, Arial, sans-serif; border-top: 1px solid #ddd; border-left: 1px solid #ddd; margin-top: 1em; }
#recent-goals th, #recent-goals td { padding: 2px 0.5em 2px 0.5em; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; text-align: center; }
#recent-goals th:first-child { text-align: left; }

#recent-goals .positive { color: #082; }
#recent-goals .neutral { color: #888; }
#recent-goals .negative { color: #A02; }

#recent-goals .quality { display: block; width: 1em; height: 1em; text-indent: -1000em; margin: 0 auto; }
#recent-goals .positive.quality { background: #082; }
#recent-goals .neutral.quality { background: #888; }
#recent-goals .negative.quality { background: #A02; }

/* 2 */

#recent-goals-2 { width: 100%; font: 1.0em "Helvetica Neue", Helvetica, Arial, sans-serif; border-top: 1px solid #ddd; border-left: 1px solid #ddd; }
#recent-goals-2 th, #recent-goals-2 td { padding: 2px 0.5em 2px 0.5em; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; }
#recent-goals-2 th:first-child { text-align: left; }

#recent-goals-2 .quality { text-indent: -1000em; }
#recent-goals-2 .positive { background: #6c6; }
#recent-goals-2 .neutral { background: #aaa; }
#recent-goals-2 .negative { background: #a77; }

/* 3 */
#recent-goals li { float: none; display: inline-block; clear: both; height: 2em; line-height: 1em; margin-bottom: 0.5em; background: #ccc; }
#recent-goals-3 .positive { background: #082; }
#recent-goals-3 .neutral { background: #888; }
#recent-goals-3 .negative { background: #A02; }
#recent-goals-3 h2 { float: left; font-size: 1em; border: none; line-height: 1em; font-weight: bold; width: 7em; }
#recent-goals-3 ul { float: left; }
#recent-goals-3 ul li { float: left; clear: none; width: 1em; height: 1em; text-indent: -1000em; margin-bottom: -2px; margin-right: 1px; }
