body { 
	background-color: #dbe0ee;
	margin: 0;
	padding: 0;
	text-align: center;
}

#content {
	margin: 0px;
	outline: 2px solid red;
}

#content_100pct_old { position: relative; text-align: center; width: calc(100% - 30px); margin: -3px auto 10px auto; }

#content_100pct { }

#content_100pluspct { text-align: center; width: 100%; margin: -3px auto 10px auto; }

.site_fonts { font-family: "Source Serif Pro",garamond,serif; }

.container {
	margin-left: auto;
	margin-right: auto;
	width: calc(100%);
	max-width: 900px;
}

.holder {
	position: relative;
	height: calc(40px + 10vw);
	max-height: 150px;
	background-image: url('/resources/images/header_bg.png'); 
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	overflow: hidden;
}

.admin_box {
	position: fixed;
	top: 0;
	left: 1px;
	width: 100px;
	height: 100px;
	background-image: url(/resources/images/admin_corner_frev_4e4330c6c2fb.gif);
}

#admin_box1 {
	z-index: 50000;
	clip-path: polygon(39% 0%,64% 24.75%,24.75% 64%,0% 39%);
}

#admin_box2 {
	cursor: pointer;
	z-index: 51000;
	clip-path: polygon(0% 37.5%,24.75% 64%,0% 89%);
}

#admin_box3 {
	z-index: 51000;
	clip-path: polygon(37.5% 0%,89% 0%,64% 24.75%);
}

.admin_box img {
	margin-top: 0;
	width: 100px;
	height: 100px;
}

input[type=radio], label, input[type=button], input[type=submit], input[type=reset] {
	cursor: pointer;
	border-radius: 4px;
}

div {
	border-radius: 6px;
}

h1 { 
	margin: 16px auto 8px auto;
	padding: 0;
	width: 85%;
	text-align: center;}

h3 {
	margin-top: 32px;
}

.center {
	margin-left: auto;
	margin-right: auto;
}

.ta_center {
	text-align: center;
}

.bold {
	font-weight: bold;
}

.italic {
	font-style: italic;
}

.highlight {
	background-color: yellow;
}

.dropdown {
	font-size: 0.87em;
	padding: 3px 10px 3px 3px;
	background-color: white;
	border: 1px solid #444;
	border-radius: 3px;
	margin-right: 0px;
	margin-bottom: 0px;
}

.error {
	color: #c03;
}

.material-symbols-outlined {
	transform: translate(-4px,6px);
}

.material-symbols-outlined a {
	color: #2d68a2;
}

.main_text {
	font-size: 1.12em;
	line-height: 140%;
	text-align: justify;
}

p.header{
	color: #2d68a2;
	margin-top: 14px;
	margin-bottom: 6px;
}

p.explain {
	margin-top: 0;
	color: black;
	font-size: calc(0.96em + 0.34vw);
}

.footer_p {
	margin-left: auto;
	margin-right: auto;
	margin-top: 10px;
	margin-bottom: 15px;
	text-align: center;
	font-size: 0.98em;
}

.copyright {
	margin-top: -5px;
	margin-bottom: 8px;
}

.superscript { 
	vertical-align: super; 
	line-height: 1.0; 
	font-size: 0.8em; 
	font-weight: bold;
	padding-left: 1px; 
	color: #c03;
}

.msg_success {
	margin-left: auto;
	margin-right: auto;
	width: 88%;
	max-width: 380px;
	text-align: left;
	font-size: 0.88em; 
	font-weight: bold;
	color: green;
}

.msg_error {
	margin-left: auto;
	margin-right: auto;
	margin-top: 8px;
	width: 88%;
	max-width: 380px;
	text-align: left;
	font-size: 0.88em; 
	font-weight: bold;
	color: #c02;
}

.msg_success > div, .msg_error > div {
	padding-top: 2px;
}

.validate_error {
	font-style: italic;
	color: #ff0040;
}

a:link.validate_error { color: #ff0040 }
a:visited.validate_error { color: #ff0040 }

#std_error_div {
	margin-left: auto;
	margin-right: auto;
	margin-top: 35px;
	text-align: center;
	width: 98%;
	max-width: 668px; 
	border: 2px solid #472400; 
	border-radius: 10px; 
	background-color: white; 
	padding: 40px 0px 30px 0px;
}

.error_div2 {
	margin-left: auto;
	margin-right: auto;
	width: 80%;
}

.ac_logged_in {
	margin-left: auto;
	margin-right: auto;
	width: 85%;
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
}

.admin_nav_links, .admin_nav_links_small {
	margin-top: 12px;
	text-align: center;
	font-size: 0.9em;
	font-family: arial;
}

.admin_nav_links > div {
	display: inline-block;
	width: 170px;
	height: 34px;
	line-height: 34px;
}

.admin_nav_links_small > div {
	display: inline-block;
	margin: 0 12px 0 12px;
	height: 34px;
	line-height: 34px;
}

#login_bar {
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
	width: calc(100vw - 18px);
	outline: 1px solid #e5f2ff;
	background-color: #e5f2ff;
	padding: 2px 20px;
	border-radius: 0;
	box-sizing: border-box;
}

#login_bar a {
	text-decoration: none;
}

#login_bar a:link, #login_bar a:visited {
	color: #5a82a5;
}
#login_bar a:hover, #login_bar a:active {
	color: #00008b;
}

.login a:link { color: #000; }
.login a:visited { color: #000; }
.login a:hover { color: #300; }
.login a:active { color: #300; }

.pw_eye {
	width: 18px;
	height: 12px;
	margin-left: -24px; 
	display: inline; 
	vertical-align: middle;
}

#login_maindiv  { 
	margin-left: auto;
	margin-right: auto;
	margin-top: 12px;
	margin-bottom: 12px;
	width: 95%;
	max-width: 400px;
	background: #e5f2ff;
	border: 2px solid #430;
}

#login_maindiv h1 { 
	width: 90%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 0;
}

#login_maindiv h3 { 
	margin-top: 18px;
	margin-bottom: 0;
	font-size: calc(20px + 0.9vw);
}

#login_maindiv.middle {
	margin-top: 100px;
}

#inner_maindiv {
	background-color: #f5f5f5; 
	margin: 10px; 
	padding: 10px 25px;
	border: 1px solid #430;
	text-align: left;
}

#inner_maindiv h1.site_title, #login_maindiv h1.site_title {
	margin-top: 2px;
	font-size: 2.15em;
	font-weight: bold;
	color: #3439f9;
	width: 99%;
}

#login_maindiv h1.site_title {
	margin-top: 14px;
}

#inner_maindiv h2.login_page {
	margin-top: 5px;
	margin-bottom: 5px;
	font-size: 1.7em;
	font-weight: bold;
	width: 99%;
	text-align: center;
}

#inner_maindiv h2.login_page2 {
	margin-top: 5px;
	margin-bottom: 5px;
	font-size: 1.5em;
	font-weight: bold;
	width: 99%;
	text-align: center;
}

#logged_in_name_div {
	padding-top: 15px;
	padding-right: 9px;
}

#logged_in_name_div span {
	font-size: 1.5em;
	font-weight: bold;
}

#logged_in_links_div {
	margin-top: 18px;
}

#logged_in_links_div > div {
	margin-top: 5px;
}

.login_nav_div {
	margin-left: auto;
	margin-right: auto;
	margin-top: 18px;
	margin-bottom: 6px;
	width: 95%;
}

.login_nav_div2 {
	margin-left: auto;
	margin-right: auto;
	margin-top: 16px;
	width: 40%;
	text-align: center;
}

.login_sess_stats {
	margin-top: 22px;
	margin-bottom: 10px;
	font-size: 0.9em; 
	color: #000; 
	line-height: 140%; 
}

#login_editor_toggle {
	padding-top: 18px; 
	padding-bottom: 3px; 
	padding-right: 15px; 
	text-align: right;
	font-size: 0.9em;
	margin: 0;
}

#login_banned {
	padding-top: 20px;
	padding-bottom: 15px;
}

.login_error {
	color: #c03;
	font-size: 0.95em;
	padding-top: 10px;
}

.login_error2 {
	color: #c03;
	font-size: 1em;
	padding-top: 8px;
}

.login_error3 {
	margin-top: 3px; 
	margin-bottom: 2px; 
	color: #c03; 
	font-size: 0.94em;
}

.login_error4 {
	margin-top: -6px; 
	margin-bottom: 4px; 
	color: #c03; 
	font-size: 0.9em;
}

.restart_login {
	font-size: 1.4em;
}

.login_expired_div {
	padding-bottom: 10px;
	margin-bottom: 6px;
}

.login_expired_div > p {
	margin-top: 15px;
	margin-bottom: 2px;
	font-size: 1.4em;
}

#login_maindiv h2.totp_page {
	margin-top: 5px;
	margin-bottom: 5px;
	font-size: 1.7em;
	font-weight: bold;
	width: 99%;
	text-align: center;
}

#login_tbl2 {
	margin-left: auto;
	margin-right: auto;
	margin-top: 14px;
	width: 260px; 
	border-collapse: collapse; 
	border-spacing: 0;
}

#login_tbl2 tr {
	vertical-align: top;
}

#login_tbl2 th {
	font-weight: normal;
}

#login_tbl2 td {
	padding-top: 2px;
	text-align: left;
}

#login_tbl2 td.submit_btn {
	padding-top: 3px;
	text-align: center;
}

.login_tbl {
	margin-left: auto;
	margin-right: auto;
	margin-top: 18px;
	text-align: left;
	width: 95%; 
	border-collapse: collapse; 
	border-spacing: 0;
}

.login_tbl tr {
	vertical-align: top;
}

.login_tbl th {
	text-align: left;
	padding-right: 4px;
}

.login_tbl td {
	padding-top: 2px;
}

.forgot_pass_tbl {
	width: 280px;
}

.forgot_pass_tbl th, .forgot_pass_tbl input {
	font-size: 1.05em;
	border-radius: 3px;
}

.forgot_pass_tbl th {
	vertical-align: middle;
}

.forgot_pass_tbl input {
	padding: 3px 5px;
}

.request_div, .request_tbl {
	margin-left: auto;
	margin-right: auto;
	width: 95%;
	text-align: left;
}

.request_tbl th {
	font-weight: normal;
	width: 40%;
	padding-right: 6px;
}

.login_input {
	width: 160px;
}

.login_link {
	font-weight: bold;
}

.user_info_details {
	margin-top: 16px;
	margin-left: 0;
	margin-bottom: 8px;
	width: 95%;
}

#comment_maindiv  { 
	margin-left: auto;
	margin-right: auto;
	margin-top: 12px;
	margin-bottom: 12px;
	width: 95%;
	max-width: 620px;
	background: #e5f2ff;
	border: 2px solid #430;
}

.comment_box_label {
	font-size: 1.18rem;
}

#comment_textarea {
	width: 95%;
	height: 80px;
	min-height: 30px;
	resize: vertical;
	padding: 6px;
}

.user_name_span {
	font-size: 1.2rem;
}

#req_textarea {
	width: 100%;
	height: 60px;
}

.login_request_btn_div {
	margin-left: auto;
	margin-right: auto;
	width: 95%;
}

#password_strength_div {
	margin-left: auto;
	margin-right: auto;
	margin-top: 18px; 
	width: 280px; 
	text-align: center; 
	font-weight: bold;
}

.pw_str_bar_frame {
	margin-right: auto; 
	margin-left: auto; 
	padding-left: 5px;
}

#password_str_bar {
	position: relative;
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 8px; 
	width: 71.3%; 
	max-width: 220px;
	height: 14px; 
	font-weight: bold; 
	z-index: 5;
}

#password_str_bar2 {
	width: 100%; 
	height: 16px; 
	left: 0; 
	top: 0; 
	outline: 2px solid black; 
	background-color: white; 
	z-index: 5;
}

#password_weak_div2 {
	position: absolute; 
	left: -47px; 
	color: orange; 
	font-size: 0.9em;
}

#password_weak_div {
	display: inline-block;
	color: orange; 
	font-size: 0.9em;
	padding-right: 6px;
}

#strength_div {
	position: absolute;
	left: 0; 
	top: 0; 
	width: 1%; 
	height: 15px; 
	padding-top: 1px; 
	color: white; 
	text-align: center; 
	background-color: orange; 
	font-size: 0.7em; 
	z-index: 10;
}

#password_strong_div2 {
	position: absolute; 
	right: -23%; 
	color: green; 
	font-size: 0.9em;
}

#password_strong_div {
	display: inline-block;
	color: green; 
	font-size: 0.9em;
	padding-left: 6px;
	padding-right: 0px;
}

#pwd_explain_text {
	margin-left: auto;
	margin-right: auto;
	font-family: georiga; 
	text-align: left; 
	font-weight: bold; 
	margin-top: 30px; 
	width: 95%;
}

#pw_force_update_div {
	margin-left: auto;
	margin-right: auto;
	margin-top: 16px;
	margin-bottom: 16px;
	color: #654321; 
	font-weight: bold; 
	text-align: left; 
	width: 370px; 
}

.login_submit_btn_div {
	margin-left: auto;
	margin-right: auto;
	width: 95%;
	padding-left: 20px;
}

.login_submit_btn, .comment_submit_btn {
	margin-top: 12px;
	padding: 3px 12px 1px 12px;
	font-size: 0.84em;
}

.comment_submit_btn {
	background-color: white;
}

.login_request_btn_div {
	margin-left: auto;
	margin-right: auto;
	width: 95%;
}

.login_text_div {
	margin-left: auto;
	margin-right: auto;
	text-align: justify;
	width: 95%; 
	padding-top: 14px;
	font-size: 1.05em;
}

.login_text_div_center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: 95%; 
	padding-top: 14px;
	font-size: 1.05em;
}

.totp_tbl {
	width: 80%;
	max-width: 350px;
	margin: 14px auto 10px auto;
	padding-bottom: 5px;
}

.totp_tbl tr:nth-child(2) td {
	padding-top: 12px;
}

.input_totp {
	width: 180px;
	font-size: 1.88em;
	padding: 7px 10px;
	text-align: center;
	letter-spacing: 3px;
	border-radius: 3px;
	border: 1px solid #444;
}

.announce_text {
	font-size: 1.1em;
}

.login_req_fields_div {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: 80%; 
	padding-top: 14px;
	font-size: 0.9em;
}

.login_small_text {
	font-size: 0.9em;
}

.diag_holder > div, .diag_holder > img {
	display: inline-block;
	vertical-align: bottom;
	margin-top: 20px;
	font-size: 1.4em;
}

.diag_holder > div:first-child {
	width: 375px;
}

.diag_holder img {
	width: 30px;
	height: 30px;
}

.diag_holder a {
	text-decoration: none;
}

.toggle_css {
	font-size: 0.93em;
}

a:link.toggle_mysqli_en { color: green; }
a:visited.toggle_mysqli_en { color: green; }
a:hover.toggle_mysqli_en { color: blue; }
a:active.toggle_mysqli_en { color: blue; }

a:link.toggle_mysqli_dis { color: #c03; }
a:visited.toggle_mysqli_dis { color: #c03; }
a:hover.toggle_mysqli_dis { color: blue; }
a:active.toggle_mysqli_dis { color: blue; }

a:link.toggle_pdo_en { color: green; }
a:visited.toggle_pdo_en { color: green; }
a:hover.toggle_pdo_en { color: blue; }
a:active.toggle_pdo_en { color: blue; }

a:link.toggle_pdo_dis { color: #c03; }
a:visited.toggle_pdo_dis { color: #c03; }
a:hover.toggle_pdo_dis { color: blue; }
a:active.toggle_pdo_dis { color: blue; }

/** Used by the login/include/database.php diag system **/

#diag_frame1 {
	position: absolute;
	left: 160px;
	top: 90px;
	min-height: 100px;
	background-color: white;
	opacity: 0.96;
	border-radius: 5px;
	z-index: 499;
	width: 8%;
	max-width: 500px;
	min-width: 13%;
	padding: 18px 2px 10px 2px;
	overflow: hidden;
	outline: 1px solid orange;
}

#diag_frame {
	position: relative;
	left: 50%;
	transform: translate(-50%,0);
	height: 20px;
	font-size: 1.3em;
	z-index: 1005;
	width: 100%;
}

@media screen and ( pointer: coarse ) {
	#diag_frame1 { left: 7px; }
}

.diagnostics_div {
	margin-left: auto;
	margin-right: auto;
	padding-top: 10px;
	width: 93%; 
	margin-top: 8px; 
}

.diagnostics_div > hr {
	width: 100%;
}

.diag_pdo {
	color: blue;
}

.diag_mysqli {
	color: #984a31;
}

.diag_q_data_red {
	color: red;
}

.diag_q_data_blue {
	color: maroon;
}

.diag_q_data_green {
	color: green;
}

.diag_font_code {
	margin-left: 0;
	font-family: courier; 
	font-size: 0.8em;
	text-align: left;
	display: block;
}

.diag_pre {
	text-align: left;
	padding-left: 30px;
}
.hits_data_tbl th a:link { color: #00008b; text-decoration: none; }
.hits_data_tbl th a:visited { color: #00008b; text-decoration: none; }
.hits_data_tbl th a:hover { color: #145f88; text-decoration: none; }
.hits_data_tbl th a:active { color: #145f88; text-decoration: none; }

.visits_data_tbl {
	margin-left: auto;
	margin-right: auto; 
	margin-top: 15px; 
	margin-bottom: 5px; 
	font-size: 0.8em;
}

.visits_data_tbl th {
	text-align: center;
}

.visits_data_tbl th a:link { 
	color: #000; 
	text-decoration: none; 
}

.visits_data_tbl th a:visited {
	color: #000; 
	text-decoration: none; 
}

.visits_data_tbl th a:hover { 
	color: #145f88; 
	text-decoration: none; 
}

.visits_data_tbl th a:active { 
	color: #145f88; 
	text-decoration: none; 
}

.hits_data_tbl, visits_data_tbl {
	margin: 15px auto 10px auto;
	font-size: 0.9em;
	background-color: white;
	border-radius: 5px;
	padding: 5px;
	border-sizing: border-box;
}

#th_color { 
	color: #145f88; 
	text-decoration: none; 
}

.change_log_date a:link    { color: #000; text-decoration: none; }
.change_log_date a:visited { color: #000; text-decoration: none; }
.change_log_date a:hover   { color: #555; text-decoration: none; }
.change_log_date a:active  { color: #555; text-decoration: none; }

.date_display_container {
	margin-left: auto;
	margin-right: auto;
	width: 98%;
	max-width: 530px;
	text-align: center;
}

.date_display_div {
	display: inline;
	padding: 6px 5px 0px 5px;
	font-size: 0.85em;
	text-align: center;
	padding-left: 9px;
	padding-right: 9px;
}

.admin_container {
	position: relative;
	margin-left: auto; 
	margin-right: auto;
	margin-top: 20px;
	width: 77vw; 
	max-width: 620px; 
	text-align: left;
	background-color: white;
	padding: 5px 35px 40px 35px;
	outline: 2px solid black;
	border-radius: 5px;
	box-sizing: border-box;
}

.admin_display_div {
	position: relative;
	margin-left: auto; 
	margin-right: auto;
	margin-top: 12px;
	margin-bottom: 10px;
	width: 93vw; 
	max-width: 658px; 
	text-align: left;
	background-color: white;
	padding: 5px 10px 5px 0px;
	outline: 2px solid black;
	border-radius: 5px;
}

.admin_nav_links, .admin_nav_links_small {
	margin-top: 12px;
	text-align: center;
	font-size: 0.9em;
	font-family: arial;
}

.admin_nav_links > div {
	display: inline-block;
	width: 167px;
	height: 34px;
	line-height: 34px;
}

.admin_nav_links_small > div {
	display: inline-block;
	margin: 0 12px 0 12px;
	height: 34px;
	line-height: 34px;
}

#admin_user_info_name {
	margin-top: 22px; 
	margin-bottom: 2px; 
	margin-left: 3px; 
	font-size: 1.8em; 
}

#admin_user_info_tbl {
	text-align: left; 
	width: 98%; 
	margin-top: 10px;
}

#admin_user_info_tbl th {
	padding: 3px;
	text-align: left;
	width: 196px;
}

#admin_user_info_tbl td {
	padding: 3px;
	text-align: left;
}

.user_info_fs {
	font-size: 1.1em;
}

#admin_visit_tbl {
	margin-top: 20px; 
	margin-left: 3px;
	text-align: left;
}

#admin_visit_tbl th {
	width: 196px;
	text-align: left;
}

#admin_legend_div {
	text-align: left;
	width: 90%;
	max-width: 700px; 
	margin-top: 20px; 
	margin-left: 4px;
}

.legend_cont {
	padding: 3px;
	display: inline-block;
}

.admin_legend_color {
	margin-top: 6px; 
	width: 10px; 
	height: 10px;
	float: left; 
	margin-left: 18px;
}

.admin_legend_label {
	padding-left: 5px;
	padding-right: 10px; 
	float: left;
}

#admin_user_info_links_div {
	margin-left: 6px; 
	margin-top: 18px;
}

#reg_success {
	margin-top: 10px;
	color: #761f8a;
	font-weight: bold;
	font-size: 1.1em;
}	

.printR {
	margin-left: auto; 
	margin-right: auto;
	width: 600px; 
	text-align: left;
}

.error_page {
	margin-left: auto;
	margin-right: auto;
	width: 60%;
	max-width: 200px;
	font-size: 1.2em;
}

/* GUIDE SECTION */

.guide_container {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 2px;
	width: calc(92.4vw); 
	max-width: 670px; 
	border: 2px solid #654321; 
	background-color: white; 
	text-align: justify;
	border-radius: 6px;
	box-sizing: border-box;
}

.guide_cont_padding {
	padding: 20px 68px 15px 68px; 
}

.guide_container h1 { 
	width: 100%; 
	text-align: center; 
	font-size: calc(26px + 0.8vw); 
	margin-top: 8px; 
	margin-bottom: 20px; 
	font-weight: normal;
}

.guide_container h2 { 
	width: 100%; 
	font-size: 1.4em; 
	font-weight: normal; 
	margin: 10px 0 0 0;
}

.guide_container h3 {
	width: 100%; 
	font-size: 1.18em; 
	font-weight: normal; 
	margin: 14px 0 8px 0;
}

.guide_container h4 { 
	font-weight: normal; 
	font-size: 1.1em;
	margin: 5px 0 -12px 0; 
}

.ptext, .code_div {
	padding-left: 26px;
	padding-bottom: 8px;
}

.ptext2 {
	text-align: left;
}

div.code {
	display: block;
	font-family: courier; 
	text-align: left;
	font-size: 0.96em;
	font-weight: bold;
	color: #00008b;
}

div.wide_link { 
	display: inline-block;
	text-align: left
}

div.narrow_link { 
	display: none;
	text-align: left;
}

.guide_group_top {
	display: block; 
}

.guide_group_bottom {
	display: block; 
	padding-top: 8px;
}

.short_br, .short_br2 {
	display: none;
}

.er_symbol {
	vertical-align: bottom;
}

.p_symbol {
	vertical-align: bottom;
	padding-bottom: 4px;
}

@media screen and (max-width: 700px) {	
	.guide_cont_padding { padding: 12px 26px 18px 26px; }
	.short_br2 { display: inline; }
}

@media screen and ( max-width: 550px ) {

	.container { margin-top: 10px; }
	.admin_container { width: 95vw; margin-top: 12px; 	padding: 5px 25px 40px 25px; }
	.guide_cont_padding { padding: 5px 25px 10px 25px; }

	.short_br { display: inline; }
	.short_br2 { display: none; }

	#password_str_bar { width: 66%; }
}

