/**
 * default styles
 */
body {
	font-family: helvetica, arial, sans-serif;
	font-size: 1em;
	color: #787878;
	margin: 0px;
	padding: 0px;
}

textarea {
    font-family: helvetica, arial, sans-serif;
    color: #222;
}

p, ul, li, form, fieldset, h1, h2, h3, h4, h5, h6, input, label, table, tr, th, td, img, dl, dt, dd, iframe {
	margin: 0px;
	padding: 0px;
	border: 0px;
	font-weight: normal;
}

#container {
	width: 964px;
	margin-left: auto;
	margin-right: auto;
	background: #fff;
}

a {
	color: #07A500;
}

a:hover {
	color: #025F00;
}

#content p {
	margin-bottom: 15px;
}

.introduction p {
    text-align: center;
}

/**
 * forms
 */

form {
	margin-top: 20px;
}

form label {
	color: #aaa;
	font-size: 1em;
}

form fieldset p {
	margin-left: 10px;
	padding-top: 12px;
	float: left;
	width: 230px;
}

form fieldset p.error {
	color: #d40000;
}

.info form fieldset {
	margin-top: 20px;
	overflow: hidden;
	width: 580px;
}

form fieldset.bioFieldset {
    width: 680px;
}

form input, form fieldset.submit a {
	float: left;
	border: 1px solid #ddd;
	padding: 3px 3px 0px 3px;
	height: 32px;
	font-size: 1.3em;
	width: 200px;
	color: #666;
}

form textarea {
    float: left;
    border: 1px solid #ddd;
    width: 300px;
    height: 150px;
    font-size: 1.1em;
    color: #666;
    padding: 2px;
    font-family: helvetica, arial, sans-serif;
}

form select {
	margin-top: 5px;
	float: left;
	margin-right: 2px;
}

form input.submit {
    color: #222;
}

form input:focus, textarea:focus {
	border: 1px solid #777;
	color: #222;
}

form fieldset.submit input, form fieldset.submit a {
	cursor: pointer;
	width: 100px;
	padding: 0px;
	margin-top: 10px;
	margin-left: 5px;
	float: right;
	font-size: 1em;
	background: #f0f0f0;
}

form fieldset.submit a {
    color: #666;
	background: #F0F0F0;
	text-decoration: none;
	padding-top: 9px;
	height: 21px;
	text-align: center;
}

/**
 * menu
 */
#menu {
	background: url("../img/global/menu.png") no-repeat;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	width: 931px;
	height: 88px;
}

#menu h2 {
	position: relative;
	overflow: hidden;
	font-size: 1.2em;
	width: 328px;
	height: 77px;
	left: 12px;
	top: 4px;
}

#menu h2 a span {
	cursor: pointer;
	width: 328px;
	height: 77px;
	position: absolute;
	left: 0px;
	top: 0px;
	background: url("../img/global/logo.png") no-repeat;
}

#menu form.login, #menu ul {
    margin-top: 0px;
	position: absolute;
	overflow: hidden;
	width: 500px;
	left: 430px;
	top: 43px;
}

#menu ul {
    top: 45px;
}

#menu .loggedInInfo {
	position: absolute;
	right: 8px;
	top: 8px;
	font-size: .85em;
	text-align: right;
}

#menu ul li {
	display: inline;
	margin-right: 35px;
}

#menu .loginError {
	position: absolute;
	left: 430px;
	top: 20px;
	font-size: .9em;
	color: #A50000;
}

#menu form.login fieldset {
	float: left;
	margin-right: 10px;
	margin-top: 0px;
	overflow: auto;
	width: auto;
}

#menu form.login label {
	color: #aaa;
	font-size: .8em;
}

#menu form.login input {
	border: 1px solid #ddd;
	padding: 2px;
	height: 16px;
	float: none;
	font-size: .8em;
	width: 135px;
}

#menu form.login input:focus {
	border: 1px solid #777;
}

#menu form.login input.login {
	height: auto;
	width: 60px;
	padding: 1px 5px 1px 5px;
}

/**
 * content
 */
.noBackground #contentContainer, .noBackground #content, .noBackground #contentBottom {
	background: none;
}

#contentContainer {
	margin-top: 2px;
	width: 930px;
	margin-left: auto;
	margin-right: auto;
	background: url("../img/global/content_middle.png") repeat-y;
}

#content {
	padding: 15px 15px 9px 15px;
	width: 900px;
	background: url("../img/global/content_top.png") no-repeat 0px 0px;
	min-height: 400px;
}

#content h2 {
	margin-bottom: 15px;
}

#contentBottom {
	width: 930px;
	height: 6px;
	background: url("../img/global/content_bottom.png") no-repeat bottom;
}

h1 {
	font-size: 1em;
	position: relative;
	width: 696px;
	height: 28px;
}

h1 span {
	width: 696px;
	height: 28px;
	position: absolute;
	background-repeat: no-repeat;
	left: 0px;
	top: 0px;
}

p.success {
	margin-top: 20px;
	margin-bottom: 20px;
	font-size: 1.5em;
}

p.instructions {
	margin-top: 10px;
	margin-bottom: 10px;
	color: #aaa;
	padding-top: 0px;
}

/**
 * footer
 */
#footer {
	margin-top: 5px;
	margin-bottom: 5px;
}
#footer ul {
	font-size: .75em;
	list-style: none;
	text-align: center;
}

#footer ul li {
	display: inline;
	margin-left: 15px;
}

#footer ul li.firstChilde {
	margin-left: 0px;
}

/**
 * info pages
 */
.infoPage {
    font-size: .9em;
}

.infoPage h1 {
    margin-bottom: 20px;
}

.infoPage h3 {
    text-decoration: underline;
    margin-bottom: 10px;
}

.infoPage ol, .infoPage ul {
    margin-top: 20px;
    margin-bottom: 20px;
}

.infoPage ol {
    margin-left: 11px;
    padding-left: 22px;
}

.infoPage ol li {
/*padding-left: 5px;*/
}

.infoPage ul {
    margin-left: 50px;
    list-style: circle;
}

.infoPage li {
    margin-bottom: 15px;
}

.infoPage h1.about span {
    background-image: url("../img/header/h1_about_us.png");
}

.infoPage h1.terms span {
    background-image: url("../img/header/h1_terms.png");
}

.infoPage h1.honorCode span {
    background-image: url("../img/header/h1_honor_code.png");
}

.infoPage h1.reasonsToJoin span {
    background-image: url("../img/header/h1_reasons_to_join.png");
}

.infoPage h1.whatWeDo span {
    background-image: url("../img/header/h1_what_we_do.png");
}

.infoPage h1.contact span {
    background-image: url("../img/header/h1_contact_us.png");
}

.infoPage h1.faq span {
    background-image: url("../img/header/h1_faq.png");
}

h1.oldJobs span {
    background-image: url("../img/header/h1_old_jobs.png");
}

h1.myMatches span {
    background-image: url("../img/header/h1_my_matches.png");
}

iframe {
    width: 0px;
    height: 0px;
    display: none;
}

.photo_100 {
    width: 100px;
    height: 100px;
    position: relative;
    margin-left: 100px;
    margin-bottom: 10px;
}

.photo_100 img, .photo_100 span img {
    position: absolute;
    left: 0px;
    top: 0px;
}

.photo_100 span {
    width: 100px;
    height: 100px;
    position: absolute;
    top: 0px;
    left: 0px;
    background: url("../img/global/rounded_corners_100.png") no-repeat;
}

.photo_200 {
    width: 200px;
    height: 200px;
    position: relative;
    margin-left: 0px;
    margin-bottom: 10px;
}

.photo_200 img, .photo_200 span img {
    position: absolute;
    top: 0px;
    left: 0px;
}

/**
 * job list
 */
ul.jobList {
    list-style: none;
}

/**
 * matches stuff
 */
h1.jobMatches span {
    background-image: url("../img/header/h1_job_matches.png");
}

h3.jobDescription {
    text-align: center;
}

#content p.description {
    color: #aaa;
    text-align: center;
    font-size: 1.2em;
    margin-top: 10px;
    margin-bottom: 10px;
}

ul.matches li {
    list-style: none;
    overflow: hidden;
    width: 870px;
    padding: 15px;    
}

ul.matches li.even {
    background: #efefef;
}

ul.matches li.selected {
}

ul.matches .info a {
    text-decoration: none;
}

ul.matches .photo_100 {
    float: left;
    margin: 0px;
}

ul.matches li.even .photo_100 span {
    background: url("../img/global/rounded_corners_100_even.png");
}

ul.matches .info {
    margin-left: 10px;
    float: left;
    width: 375px;
}

ul.options {
    float: left;
    width: 215px;
    overflow: hidden;
    list-style: none;
}

ul.matches ul.options li {
    float: right;
    width: 65px;
    margin-left: 10px;
    padding: 0px;
    cursor: pointer;
}

ul.matches ul.options li.interested {
    cursor: default;
}

ul.matches ul.options li.lastChild {
    margin-left: 0px;
}

ul.matches .info span {
    font-size: 2em;
}

ul.matches .percent {
    width: 160px;
    font-size: 4em;
    margin-left: 10px;
    float: left;
    text-align: right;
}

ul.options li a {
    position: relative;
    padding: 7px 0px 0px 7px;
    width: 65px;
    height: 65px;
    display: block;
    font-size: .6em;
    text-align: center;
}

ul.options li a span {
    position: absolute;
    width: 65px;
    height: 65px;
    top: 0px;
    left: 0px;
}

a.selectUser span, a.accept span {
    background: url("../img/button/btn_check.png") no-repeat;
}

a.reject span {
    background: url("../img/button/btn_x.png") no-repeat;
}

a.showMore span {
    background: url("../img/button/btn_magnifying.png") no-repeat;
}

a.showMore:hover span, a.selectUser:hover span, a.accept:hover span, a.reject:hover span {
    background-position: -65px 0px;
}

.moreInfo {
    display: none;
    padding-top: 10px;
    clear: left;
    width: 870px;
    overflow: hidden;
}

.moreInfo .ratings {
    width: 455px;
    float: left;
}

dl.rating {
    width: 217px;
    float: left;
    margin-right: 10px;
    overflow: hidden;
}

dl.rating dt {
    clear: left;
    padding-top: 15px;
    padding-bottom: 3px;
    font-size: .7em;
}

dl.rating ul {
    overflow: hidden;
    list-style: none;
    width: 140px;
    height: 14px;
    border: 1px solid #ccc;
}

dl.rating ul li {
    float: left;
    padding: 0px;
    width: 14px;
    height: 14px;
/*    margin-right: 1px;*/
    background: url("../img/global/bg_skill_node2.png") no-repeat;
}

dl.rating ul li.selected {
    background-position: -14px 0px;
}

dl.extra {
    margin-bottom: 20px;
}

.moreInfo dl.extra dt {
    font-size: 1.25em;
    border-left: 2px solid #dedede;
    border-right: 2px solid #dedede;
    padding: 5px;
}

.moreInfo dl.extra dt.firstChild {
    border-top: 2px solid #dedede;
}

.moreInfo dl.extra dd {
    padding: 5px;
    font-size: .85em;
    border-right: 2px solid #dedede;
    border-left: 2px solid #dedede;
    border-bottom: 2px solid #dedede;
}


/**
 * confirm lightbox
 */
ul.options .message {
    display: none;
}

.message p {
    font-size: 1.2em;
    margin-bottom: 15px;
}

.message p.extraInfo {
    font-size: .9em;
    color: #aaa;
}

.message ul {
    overflow: hidden;
    width: 400px;
    margin-top: 45px;
    height: 28px;
}

.message ul li {
    list-style: none;
    float: left;
    margin-right: 20px;
}

.message ul li a {
    display: block;
    position: relative;
    height: 28px;
}

.message ul li a span {
    cursor: pointer;
    position: absolute;
    height: 28px;
    top: 0px;
    left: 0px;
    background-repeat: no-repeat;
}

.message ul li a.yes {
    width: 61px;
}

.message ul li a.no {
    width: 45px;
}

.message ul li a.yes span {
    width: 61px;
    background-image: url("../img/button/yes.png");
}

.message ul li a.no span {
    width: 45px;
    background-image: url("../img/button/no.png");
}

.message ul li a.yes:hover span {
    background-position: -61px 0px;
}

.message ul li a.no:hover span {
    background-position: -45px 0px;
}

/**
 * mini calendar
 */
.miniCalendar {
    float: right;
}

.miniCalendar dl.key {
    font-size: .8em;
    overflow: hidden;
    width: 385px;
    margin-top: 10px;
    margin-bottom: 25px;
    padding-left: 15px;
}

.miniCalendar dl.key dt {
    float: left;
    margin-right: 10px;
    width: 15px;
    height: 15px;
    border: 1px solid #787878;
}

.miniCalendar dl.key dd {
    padding-top: 2px;
    float: left;
    margin-right: 30px;
}

.miniCalendar table {
    border-collapse: collapse;
}

.miniCalendar table th {
    width: 50px;
}

.miniCalendar table th.left {
    font-size: .6em;
    vertical-align: top;
}

.miniCalendar table td {
    background: #fff;
    border: 1px solid #aaa;
    height: 20px;
}

.miniCalendar table td.overlap, .miniCalendar dl.key dt.overlap {
    background: #07a500;
}

.miniCalendar table td.job, .miniCalendar dl.key dt.job {
/*    background: #003AA5;*/
    background: #CCD6E8;
}

.miniCalendar table td.user, .miniCalendar dl.key dt.user {
/*    background: #F5F506;*/
    background: #FDFBD2;
}

.miniCalendar table tr.noJobTimes td.user, .miniCalendar dt.userOnly {
    background: #F5F506;
}



/**
 * pagination
 */
.pager {
    width: 800px;
    margin: auto;
    margin-top: 20px;
}

/**
 * table
 */
table.jobList {
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
    width: 800px;
}

table.jobList th {
    font-size: 1.5em;
}

table.jobList td {
    border: 1px solid #aaa;
    padding: 5px;
}

h3.matchSection {
    margin-top: 30px;
}

/**
 * faq page
 */
ul.faq {
    list-style: none;
    margin-left: 0px;
}

ul.faq h4 {
    font-weight: bold;
    padding: 20px 0px 20px 0px;
}

ul.faq h4.first {
    padding: 10px 0px 20px 0px;
}

/**
 * rating ul 
 */
ul.rating {
    margin-top: 10px;
    width: 125px;
    height: 24px;
    overflow: hidden;
}

ul.rating li, ul.rating li span {    
    width: 25px;
    height: 24px;
}

ul.rating li {
    text-align: center;
    font-size: .5em;
    padding: 5px 0px 0px 0px;
    float: left;
    position: relative;
}

ul.rating li span {
    position: absolute;
    top: 0px;
    left: 0px;
    background: url("../img/global/bg_star_small.png") no-repeat;
}

ul.rating li.selected span {
    background-position: -25px 0px;
}

h1.studentTour span {
	background-image: url("../img/header/h1_student_video_tour.png");
}

h1.employerTour span {
	background-image: url("../img/header/h1_employer_video_tour.png");
}

.videoContainer {
    margin-top: 40px;
    margin-bottom: 30px;
}

.video {
    width: 640px;
    height: 416px;
    padding: 25px;
    background: #333;
    margin: auto;
}

/**
 * about page
 */
.bio {
    border-top: 1px dotted #979797;
    padding: 20px 0px 20px 0px;
    width: 900px;
    overflow: hidden;
}

.bio .photo {
    float: left;
    margin-right: 10px;
}

.bio .info {
    float: left;
    width: 718px;
}

#content .bio h2, .infoPage .bio h3 {
    margin-bottom: 0px;
}

.infoPage .bio h3 {
    text-decoration: none;
    font-style: italic;
    font-size: 1em;
}

.bio h4.noMargin {
    margin-bottom: 0px;
}

.bio h4 {
    margin-bottom: 20px;
}

.mainPhoto, .caption {
    width: 450px;
    margin: auto;
}

.caption {
    font-style: italic;
    font-size: .9em;
    margin-bottom: 15px;
}

p.matchInstructions {
    margin-top: 10px;
    text-align: center;
    font-size: 1.2em;
    padding: 10px;
    background: #efefef;
}
