#footer { font-family: arial,verdana,sans-serif; font-size: .85em; }
#footer a { color: #866F5B; text-decoration: none; }
#footer a:hover { color: #A51A0A; }

div[id="footer"] { position: relative; top: -5px; left: -5px; width: 327px; height: 48px; background: url(txt_footer.gif) 5px 5px no-repeat; z-index: 1; }
/* xhtml */
#footer a[href="http://validator.w3.org/check/referer"] { position: absolute; top: 17px; left: 105px; width: 33px; height: 0px; padding-top:9px; overflow: hidden; }
#footer a[href="http://validator.w3.org/check/referer"]:hover { background: url(button_xhtml_over.gif) no-repeat; }
/* css */
#footer a[href="http://jigsaw.w3.org/css-validator/check/referer"] { position: absolute; top: 17px; left: 145px; width: 18px; height: 0px; padding-top:9px; overflow: hidden; }
#footer a[href="http://jigsaw.w3.org/css-validator/check/referer"]:hover { background: url(button_css_footer_over.gif) no-repeat; }
/* cc */
#footer a[href="http://creativecommons.org/licenses/sa/1.0/"] { position: absolute; top: 17px; left: 170px; width: 13px; height: 0px; padding-top:9px; overflow: hidden; }
#footer a[href="http://creativecommons.org/licenses/sa/1.0/"]:hover { background: url(button_cc_over.gif) no-repeat; }
/* 508 */
#footer a[title="Check the accessibility of this site according to U.S. Section 508"] { position: absolute; top: 17px; left: 189px; width: 15px; height: 0px; padding-top:9px; overflow: hidden; }
#footer a[title="Check the accessibility of this site according to U.S. Section 508"]:hover { background: url(button_508_over.gif) no-repeat; }
/* aaa */
#footer a[title="Check the accessibility of this site according to WAI Content Accessibility Guidelines 1"] { position: absolute; top: 17px; left: 228px; width: 20px; height: 0px; padding-top:9px; overflow: hidden; }
#footer a[title="Check the accessibility of this site according to WAI Content Accessibility Guidelines 1"]:hover { background: url(button_aaa_over.gif) no-repeat; }


input,textarea, select {
	font-size: 1em;
	color : #E4C58B;
	font: normal;
	background-color : #1a1a1a;
	border-color: #444444;
}

/* a:visited was needed seperately because else IE gets annoying */
a,a:visited { COLOR: #E4C58B; TEXT-DECORATION: none; }

a:hover {
	BACKGROUND: #181818; COLOR: #DD6900; TEXT-DECORATION: underline;
}
.greentext { color: #00ff00; }
.yellowtext { color: #F1F345; }
.redtext { color: #ff0000; }
.bluetext { color: #0000ff; font-weight: bold; font-size: 80%; }
.bigbluetext { color: #0000ff; font-weight: bold; }
.login,.lcell,.lcell-c,.lcell-d,.logo { border: 1px #444444 solid; border-collapse: collapse; border-width: 1px 1px 1px 1px;}
.logo { border-width: 1px 1px 0px 1px; }
.lcell { text-align: left; }
.lcell-c { text-align: center; }
.title { color: #FFA34F; font-weight: bold; }
.othertext { text-align: left;  font-size: 80%; }

/* div stuff */
#all  { position: relative; margin: 0px; padding: 0px; left: 0; right: 0; vertical-align: top; width: 100%; height: 100%; bottom: 0; top: 0; }
#menu { position: absolute; left:   5px; width: 140px; text-align: right; font-size: 75%; top: 0; }
#cont { position: absolute; left: 155px; right: 155px; text-align: left;  font-size: 85%; height: 100%; vertical-align: top; top: 0; }
#stat { position: absolute; right: 10px; width: 140px; text-align: left;  font-size: 75%; top: 0; }

body {
	font-family: Arial, sans-serif;
	background-color: #1a1a1a;
	color: #33ffff;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 100vh;
	margin: 0;
	padding: 20px;
	box-sizing: border-box;
	font-size: 14px;
}
.portal-container { background: #2a2a2a; padding: 30px; border-radius: 8px; box-shadow: 0 4px 15px rgba(0,0,0,0.5); width: 100%; max-width: 400px; text-align: center; }
h2 { margin-bottom: 20px; color: #ff3333; }
p {color: #ff3333; font-size: 1.2em;}
/* Tabs Styling */
.tabs { display: flex; margin-bottom: 25px; border-bottom: 2px solid #444; }
.tab-btn { flex: 1; padding: 12px; background: none; border: none; color: #aaa; font-size: 16px; font-weight: bold; cursor: pointer; transition: color 0.2s; }
.tab-btn:hover { color: #fff; }
.tab-btn.active { color: #ff3333; border-bottom: 2px solid #ff3333; margin-bottom: -2px; }

.form-group { margin-bottom: 15px; text-align: left; }
label { display: block; margin-bottom: 5px; color: #ccc; font-size: 14px; }
input[type="text"], input[type="email"], input[type="password"] { width: 100%; padding: 10px; border: 1px solid #444; background: #333; color: #fff; border-radius: 4px; box-sizing: border-box; }
input:focus { border-color: #ff3333; outline: none; }

.btn-submit { width: 100%; padding: 12px; border: none; background: #ff3333; color: #fff; font-size: 16px; font-weight: bold; border-radius: 4px; cursor: pointer; transition: background 0.2s; margin-top: 10px; }
.btn-submit:hover { background: #cc0000; }

/* Alert Banners */
.error-box { background: #551a1a; border: 1px solid #ff3333; color: #ffcccc; padding: 10px; border-radius: 4px; margin-bottom: 20px; font-size: 14px; text-align: left; }
.success-box { background: #1a4d1a; border: 1px solid #228b22; color: #ccffcc; padding: 10px; border-radius: 4px; margin-bottom: 20px; font-size: 14px; text-align: left; }

/* Form Visibility Toggle */
.auth-form { display: none; }
.auth-form.active { display: block; }
input.qty-input { width: 35px; text-align: center; font-size: 1.2em; margin: 0 5px; }
