body {
	font-size: 20px;
	font-family: Roboto, helvetica, sans-serif;
	//letter-spacing: 0.10em;
	//color: 444;
}

.hid {
	display: none;
}

h1 {
	font-family: Oswald, helvetica, sans-serif;
	text-align: center;
}
h2, h3 { text-align: center; }


a {
	text-decoration: none;
	font-weight: normal;
	color: #07f;
}

div.important {
	//font-weight: bold;
	text-align: center;
	background: #ffb;
	border: solid 3px #ff0;
	padding: 1em;
}


div.genericbox {
	padding: 1em 0.3em 2em 0.3em;
	xmargin-bottom: 2em;
	background: #fff;
}

div.altbox {
	background: #6ae;
}

div.sidenote {
	font-size: 80%;
	font-style: italic;
	margin: 1em 0;
	color: #000;
	opacity: 0.5
}

div.account_credit {
	padding: 1em 0;
	font-weight: bold;
	color: #080;
}


img.course_group_symbol {
	//color: #000;
	//text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.5);
	//cursor: default;
	//padding: 0 1em 0 0;
	vertical-align: middle;
	height: 1.0em;
	margin: 0 1em 0 0;
}

div.course_group_contents {
	padding: 2em 1em 2em 1em;
	margin-bottom: 2em;
}

ul.sub_courses {
	margin: 0;
	padding: 2em;
	//border: solid 1px #f00;
	list-style-type: none;
	text-align: left;
}
ul.sub_courses li {
	//border: solid 1px #0f0;
	padding: 0.5em 0;
}

div.course_unavailable {
	background-color: #ff0;
	padding: 0.5em 1em;
	border: solid 4px #f00;
	text-align: center;
	margin: 1em 0;
}

div.crs_info_desc {
	padding: 1em 0;
	//text-align: center;
	text-align: left;
}

div.course_info {
	padding: 1em 0;
}
div.course_info div.field_label {
	display: inline-block;
	width: 55%;
	text-align: right;
}
div.course_info div.field_value {
	display: inline-block;
	width: 35%;
	text-align: left;
}
div.course_info_take {
	padding: 1em 0;
	text-align: center;
}

div.crs_info_note {
	font-size: 90%;
	color: #666;
	font-style: italic;
	text-align: center;
	margin-bottom: 0.5em;
}

div.crs_info_admin_detail {
	color: #f00;
	font-family: courier;
	font-style: italic;
	font-size: 100%;
	text-align: center;
}


#hdr_logo img {
	margin: 1em 0 1em 1em;
	height: 2.8em;
}


.home_guest_blurb {
	color: #08f;
	padding: 3em;
	background-color: #aaa;
	text-align: center;
	ztext-shadow: 0px 0px 5px rgba(255, 255, 255, 0.5);
	background-image: none;
}

.home_guest_blurb .glass {
	background: rgba(255,255,255,0.8);
	padding: 1.5em;
}

.home_guest_blurb .glass > p:first-child {
	ztext-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	font-size: 90%;
	color: #222;
}


.home_login_reg {
	text-align: center;
	padding: 3em;
}

.home_how_it_works {
	text-align: center;
	vertical-align: middle;
	background: #48c;
	padding: 3em;
}

.home_how_it_works ul {
	text-align: left;
	display: inline-block;
	width: 90%;
	padding-left: 0;
}

.home_how_it_works li {
	padding: 0.5em 0;
}

.home_how_it_works li a {
	color: #def;
}

.tabcontainer {
	zmargin-left: 1em;
	zoverflow: hidden;
	zheight: 25px;
	text-align: center;
}

a.course_category {
	background-color: rgba(255,255,255,0.2);
	border-radius: 3px;
	//border: solid 1px #444;
	padding: 0.5em 1em;
	display: inline-block;
	color: #fff;
	margin: 0.1em;
	letter-spacing: 0.05em;
	width: 75%;
}




div.subhead {
	background-color: #07f;
	padding: 0.5em;
	text-align: center;
}
div.subhead h1 {
	font-weight: normal;
	color: #def;
}
div.subhead h2 {
	font-size: 80%;
	font-weight: normal;
	color: #def;
}

div.found_courses {
	margin: 2em 0;
}
div.found_courses > div.found_course {
	border-top: solid 1px #ddd;
	color: #666;
	margin: 0em 0em;
	padding: 0.8em 0.8em;
	background-color: #fff;
	border-radius: 3px;
}
div.found_courses > div:hover {
}

div.found_courses .may_take_1 {
	color: #0a0;
	display: inline-block;
}
div.found_courses .may_take_0 {
	color: inherit;
	display: none;
}

div.found_courses > div > div {
	zpadding: 0.5em 2em 0.5em 0em;
	//display: inline-block;
}
div.found_courses > div > div.title {
	font-weight: bold;
	color: #3d6082;
}
div.found_courses > div > div.description {
	font-weight: bold;
	//display: block;
}
div.found_courses .cost {
	font-style: italic;
}
div.found_courses > div > div.credits {
	font-weight: bold;
}
div.found_courses > div > div.description {
	font-weight: normal;
}
div.found_courses > div > div.last_attempt {
	font-style: italic;
	color: #666;
}
div.found_courses > div > div.last_passed {
	font-style: italic;
	color: #666;
}


div.purch_option {
	text-align: center;
	padding: 2em 0;
}

a.purch_button {
	width: 11em;
	text-align: center;
}

div.buy_tagline {
	margin-top: 0.5em;
	font-size: 90%;
}

.hand {
	cursor: pointer;
	cursor: hand;
}
.hand:hover {
	opacity: 0.8;
}

.corner_widget {
	position: absolute;
	top: 0em;
	right: 0em;
	margin: 1.5em 2.5em 0 0;
	z-index: 2;
	white-space: nowrap;
	font-size: 80%;
	text-align: right;
}

.corner_widget .guest {
	zdisplay: none;
}

.corner_widget .auth {
	zdisplay: none;
}

.corner_widget .auth .settings {
	vertical-align: middle;
	width: 1.5em;
	height: 1.5em;
}

#auth_name {
	vertical-align: middle;
}

.admin_symbol {
	font-size: 1.2em;
	color: #ff0;
	text-shadow: 0px 0px 3px rgba(0, 0, 0, 1.0);
}

#menu_button {
	color: #222;
	font-size: 2.0em;
	position: absolute;
	top: 0em;
	right: 0em;
	padding: 0.20em 0.6em;
	z-index: 2;
	//text-shadow: 0px 0px 4px rgba(255, 255, 255, 1.0);
}

.menu a {
	display: block;
	padding: 1em 2em;
	text-decoration: none;
	text-align: left;
	font-weight: normal;
	color: #cde;
}

.menu a:hover {
	opacity: 0.8;
}

.side_menu {
	background: rgba(0, 50, 100, 1.0);
	white-space: nowrap;
	position: absolute;
	top: 0;
	right: 0;
	width: 0em;
	z-index: 1;
	overflow: hidden;
	height: 100%;
	padding-top: 2em;
}

.side_menu hr {
	border: none;
	border-top: solid 1px rgba(255,255,255,0.5);
}


.top_menu a {
	display: inline-block;
	color: #666;
	font-weight: normal;
}

.adminmenu {
	text-align: center;
}
.adminmenu a {
	color: #e80;
}

.content {
	overflow: hidden;
}

div.inset {
	//margin: 1em;
}


#loginfailed {
	color: #fff;
	background-color: #f00;
	font-weight: bold;
	padding: 1em;
	display: none;
	width: 50%;
}

input.signin_field {
	padding: 0.2em 0.5em;
	border: solid 0.05em #444;
}

input.reg_field {
	padding: 0.2em 0.5em;
	margin: 0 0 1em 0;
	border: solid 0.05em #ddd;
	border-radius: 3px;
	background-color: #f4f4f4;
	display: block;
	width: 90%;
}
select.reg_field {
	padding: 0.2em 0.5em;
	margin: 0 0 1em 0;
	display: block;
	border: solid 0.05em #ddd;
	border-radius: 3px;
	background-color: #f4f4f4;
	width: 90%;
	-webkit-appearance: inherit;
}
select.required {
	background-color: #ff8;
}
input.required {
	background-color: #ff8;
}

div.reg_page_head {
	background: #6ae;
	padding: 2em 0;
	margin-bottom: 2em;
}

div.fitter_page_head {
	background: #6ae;
	padding: 2em 1em 3em 1em;
	margin-bottom: 2em;
}

div.emailsignup_head {
	//background: #6ae;
	padding: 2em 1em 3em 1em;
	margin-bottom: 2em;
	text-align: center;
}


div.dashbox {
	margin: 2em 0.5em;
	//border: solid 1px #ddd;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	width: 90%;
}


div.schedule {
	padding: 2em 1em 3em 1em;
}
div.schedule a {
	color: #28e;
}

div.schedule div.row {
	padding: 2em 0;
}


#ok { display: none; }

.required_label {
	color: #900;
	font-weight: bold;
}

input.register_field {
	padding: 0.2em;
	border: none;
	border-bottom: solid 0.1em #444;
}

span.required > input {
	background-color: #ff8;
}

div.registration_field {
	margin-bottom: 1.0em;
}


div.home_title {
	font-size: 90%;
	color: #666;
}
div.home_org {
	font-size: 90%;
	color: #666;
}
div.home_city {
	font-size: 90%;
	color: #666;
}

div.home_lab, div.home_accred_num, div.home_points {
	display: inline-block;
	margin: 0 1em 0 0;
}

div.home_field {
	display: inline-block;
}


div.reg_group {
	text-align: center;
	display: inline-block;
	width: 80%;
	border: solid 1px #ddd;
	border-radius: 3px;
	vertical-align: top;
	padding: 1em;
	margin: 0.2em 0.2em 1.5em 0.2em;
}

div.reg_group_title {
	font-weight: bold;
	margin: 1.0em;
	font-size: 80%;
	color: #04a;
}


iframe.embedFrame {
	width: 80%;
	overflow: none;
	border: none;
	padding: 1em;
}


div.general_text {
	text-align: left;
	padding: 0em 1em 1em 1em;
	margin: 0em;
	//border:solid 1px red;
}
div.general_text h1 {
	color: #357;
	margin-top: 2em;
}
div.general_text h2 {
	color: #666;
	margin-top: 2em;
}

div.general_text ul, div.general_text ol {
}
div.general_text ul li, div.general_text ol li {
	margin-bottom: 1em;
}


div.redeem-ok {
	color: #0a0;
	padding: 1em;
	border: solid 2px #0a0;
	background-color: #efe;
}

form.login_form {
	margin: 2em 2em 4em 2em;
}



#fbiwarn {
	display: none;
	position: fixed;
	top: 30%;
	right: 1em;
	z-index: 22;
	border: solid 1px #abc;
}

#slide_view {
	display: none;
	background-color: #000;
	top: 8%;
	left: 2%;
	width: 96%;
	height: 85%;
	position: absolute;
	z-index: 21;
	-webkit-box-shadow: 0px 0px 50px rgba(0, 0, 0, 1);
	-moz-box-shadow:    0px 0px 50px rgba(0, 0, 0, 1);
	box-shadow:         0px 0px 50px rgba(0, 0, 0, 1);
}
#current_slide {
	max-height: 100%;
	max-width: 100%;
}
#slide_container {
	text-align: center;
	width: 100%;
	height: 88%;
}
#slide_controls {
	text-align: center;
	//height: 8%;
	//margin: 4% 0 0 0;
	color: #def;
	//font-weight: bold;
	//font-size: 150%;
	//vertical-align: middle;
	//width: 100%;
	font-size: 100%;
	//border: dashed 1px green;
}
#closer, #next_slide, #prev_slide {
	position: absolute;
	width: 2em;
	opacity: 0.6;
}
#close {
	opacity: 0.9;
}
#closer {
	top: -15px;
	right: -15px;
}
#prev_slide {
	bottom: 5px;
	left: 20px;
}
#next_slide {
	bottom: 5px;
	right: 20px;
}

.crs_glass {
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #121;
	opacity: 0.9;
	filter: alpha(opacity=90);
}
.crs_win {
	position: absolute;
	top: 0;
	left: 0;
	width: 96%;
	z-index: 20;
	background-color: #fff;
	margin: 1em 2%;
	//padding: 1%;
	//margin: 1em;
}
.crs_win_guts {
	margin: 1em;
	padding: 1em;
}

#pdf_box {
	z-index:25;
	position:fixed;
	top: 0em;
	left: 0;
	width: 99.8%;
	height: 100%;
	border: dashed 1px #0f0;
	text-align: center;
	padding: 1%;
	display: none;
}
#vid_box {
	z-index: 25;
	position: fixed;
	top: 2em;
	left: 0;
	width: 99%;
	height: 90%;
	text-align: center;
	padding: 1%;
	display: none;
}
#mp4_container {
	z-index:25;
	position:fixed;
	top: 0.5em;
	left: 0;
	width: 99%;
	height: 90%;
	text-align: center;
	padding: 1%;
	display: none;
}
#mp4_box {
	width: 75%;
}
#vid_glass {
	z-index:20;
	position:fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity:0.8;
	filter: alpha(opacity=80);
	display: none;
}

#hope_box {
	z-index:25;
	position:fixed;
	top: 0;
	left: 0;
	width: 99%;
	height: 69%;
	//border: dashed 1px #0f0;
	text-align: center;
	//padding: 1%;
	display: none;
}


iframe.hope_view {
	position: fixed;
	top: 8%;
	left: 0;
	width: 100%;
	height: 91%;
	border: none;
}

.closer {
	z-index: 5;
	position: fixed;
	top: 0.2em;
	right: 0.2em;
}



div.study_material {
	border: solid 1px #aaa;
	margin: 0.25em;
	padding: 1em 0;
	border-radius: 1em;
	text-align: center;
}
div.study_material div.details {
	display: inline-block;
	vertical-align: middle;
	margin: 0 1em;
}
div.study_material div.start {
	display: inline-block;
	margin: 0 1em;
}
div.study_material div.spacer {
	padding: 0 1em;
}


a.actv {
	border: solid 3px #fff;
	background: #ddd;
	color: #468;
}

#pwreset_ok {
	font-weight: bold;
	padding: 1em;
	display: none;
}


.exam_question {
	margin: 1.5em 0 .5em 0;
	font-size:90%;
	text-decoration: underline;
	font-family: helvetica, sans-serif;
}
.exam_answer {
	margin: .3em 0 .3em 2em;
	font-size:95%;
}
.exam_answer_correct {
	margin: .3em 0 .3em 2em;
	font-size:95%;
	color: #fff;
    background: #0b0;
}
.exam_answer_incorrect {
	margin: .3em 0 .3em 2em;
	font-size:95%;
    color: #fff;
	background: #b00;
}
.exam_qa {
	margin: 0 0 1em 0;
}
.the_right_answer {
	border: solid 1px #0b0;
	padding: 0.2em;
}

.exam_figure {
	padding: 1em 1vw;
	margin: 1em 1vw;
	border: solid 1px rgba(0,0,0,0.5);
}


.upld_lab { float: left; width: 25%; text-align: right; margin-right: 1em; }
.upld_fld[type=file] { color: #aaa; margin: 0.5em 0 }
.upld_types {  margin: 0 0 1em 30%; }


.help {
	font-size: 90%;
	color: #89a;
	font-style: italic;
}


div.stat_tag, div.stat_val {
	padding: 0.3em 1em 0.3em 1em;
	display: inline-block;
}
div.stat_tag {
	font-weight: bold;
	width: 20em;
}
div.stat_val {
	width: 6em;
}
div.stat_head {
	font-size: 110%;
	font-weight: bold;
	margin: 1.5em 0 0.3em 0;
	color: #876;
}



.purchlabel, .purchfield {
	vertical-align: absolute-middle;
	border: dotted 0px #f00;
	margin: 0.3em 0 0.3em 0;
}
.purchlabel {
	width: 40%;
	text-align: right;
	float: left;
	clear: left;
	font-weight: bold;
	padding: 0.0em 1.5em 0.0em 0;
}
.purchfield {
	text-align: left;
	padding: 0;
}
.purchrow {
	border: dashed 0px #00f;
	padding: 1px;
}
.purchhr {
	border-top: solid 1px #ccc;
	height: 1px;
	margin: 1em 10em 1em 10em;
}

table.plain {
}
table.plain td {
	border-collapse: collapse;
	border: solid 1px #aaa;
	padding: 0.4em 0.8em;
}
table.plain tr:first-child {
	background-color: #def;
	font-weight: bold;
	text-align: center;
}


div.footer {
	background-color: #234;
	color: #abc;
	padding: 2em;
	font-size: 80%;
	font-family: "Roboto";
	font-weight: 300;
	text-align: center;
}

div.footer .section {
	display: inline-block;
	vertical-align: top;
	//border: solid 1px green;
	margin: 2em;
}

div.footer .section ul {
	text-align: left;
	padding: 0;
	margin: 0;
}
div.footer .section ul li {
	list-style-type: none;
	padding: 0em 0em 1em 0em;
}

div.footer .copr {
	color: #9ab;
	letter-spacing: 1px;
	font-weight: 100;
}

div.footer a {
	text-decoration: none;
	font-weight: normal;
	color: #cde;
}

.footmenu {
	height: 20em;
	background-color: #222;
	color: #dddd99;
	padding: 0.5em;
}
.footmenu a {
	text-decoration: none;
	color: #ffff99;
	display: block;
	text-align: center;
	font-size: 150%;
	padding: 1em;
}
.footmenu a:hover {
	text-decoration: underline;
}

.dbg_fmt {
	position: fixed;
	color: #ff0;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.5);
	padding: 5px;
	font-size: 12px;
	z-index: 30;
	display: none;
}

.found_count {
	margin-top: 1em;
	border-top: solid 1px #ccc;
	padding-top: 1em;
	text-align: center;
	margin-bottom: 1em;
}

.has_passed_0 {
	display: none;
	float: right;
	height: 2em;
}
.has_passed_1 {
	float: right;
	height: 2em;
}

.ml_notice {
	margin: 0 auto 1em auto;
	max-width: 36em;
	text-align: center;
	font-weight: 500;
}
.ml_notice_ok {
	color: #1a7f37;
}
.ml_notice_err {
	color: #b32d2e;
}
.ml_screen_reader {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.ml_signup_actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.85em;
	justify-content: center;
}
.ml_signup_busy {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	font-size: 0.95em;
	color: #444;
}
.ml_spinner {
	display: inline-block;
	width: 1.25em;
	height: 1.25em;
	border: 2px solid rgba(0, 0, 0, 0.12);
	border-top-color: #333;
	border-radius: 50%;
	animation: ml_signup_spin 0.65s linear infinite;
	vertical-align: middle;
}
@keyframes ml_signup_spin {
	to { transform: rotate(360deg); }
}

.newsletter {
	background-color: #fff;
	text-align: center;
	padding: 3em;
}

.edit_icon {
	color: #d00;
	cursor: pointer;
	font-style: italic;
}


/* small	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	*/
@media (max-width: 420px) {
	.hide_if_sml { display: none; }
}

/* medium	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	*/
@media (min-width: 421px) and (max-width: 800px) {
	.hide_if_med { display: none; }

	.home_how_it_works ul {
		width: 70%;
	}
	div.general_text {
		text-align: left;
		padding: 0em 1em 1em 1em;
		margin: 1em;
	}
	div.subhead {
		padding: 2em;
	}
	div.genericbox {
		padding: 1em 0.3em 2em 0.3em;
	}
	div.dashbox {
		width: 80%;
	}
	.crs_win {
		width: 92%;
		margin: 1.5em 4%;
	}
	.crs_win_guts {
		margin: 1em;
		padding: 1em;
	}
	div.study_material {
		margin: 1em 0.75em;
	}
	a.course_category {
		width: 80%;
		margin: 0.5em;
	}


}
/* large	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	*/
@media (min-width: 801px) {
	.hide_if_big { display: none; }

	.home_guest_blurb {
		background-image: url(https://oandpedu.com/d/oandpedu.com/images/header-img-01.jpg);
	}
	.menu {
		text-align: center;
	}
	.top_menu a {
		padding: 0.5em 1em;
	}
	.home_how_it_works ul {
		width: 50%;
	}
	div.reg_group {
		width: 40%;
	}
	div.general_text {
		text-align: justify;
		padding: 0em 2em 1em 2em;
		margin: 2em;
	}
	div.subhead {
		padding: 3em;
	}
	div.genericbox {
		padding: 3em 2em 3em 2em;
	}
	div.dashbox {
		width: 45%;
	}
	#slide_view {
		left: 5%;
		width: 90%;
	}
	.crs_win {
		width: 90%;
		margin: 2em 5%;
	}
	.crs_win_guts {
		margin: 3em;
		padding: 3em;
	}
	div.study_material {
		margin: 1em 2em;
	}
	div.study_material div.details {
		margin: 0 2em;
	}
	div.study_material div.start {
		margin: 0 2em;
	}
	div.study_material div.spacer {
		padding: 0 2em;
	}
	a.course_category {
		width: 30%;
		margin: 1em;
	}

	div.found_courses > div.found_course {
		margin: 0em 3em;
	}
}
