/* Netscape 4 safe font sizes */
body, div, p, th, td, li, dd, caption {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 100%;
}

div.quote {
	margin: 0 10%;
	text-align: left;
}
/* Default */
h1 { font-size: 130%; font-weight: bold; }
h2 { font-size: 110%; font-weight: bold; }
h3 { font-size: 100%; font-weight: bold; }
.bold { font-weight: bold; }
.normal { font-weight: normal; }
.uline { text-decoration: underline; }
.clear { clear: both; }

.xsmall { font-size: 50%; }
.reallysmall { font-size: 70%; }
small, .small, .optional { font-size: 80%; }
big, .big { font-size: 150%; }

.center { text-align: center; }
.right, .right td, .right th { text-align: right; }
.left, .left td, .left th { text-align: left; }
.baseline, .baseline td, .baseline th, table.baseline tr td, table.baseline tr td { vertical-align: baseline; }
.atb, .atb td, .atb th, table.atb tr td, table.atb tr td { vertical-align: text-bottom; }
.top, .top td, .top th { vertical-align: top; }
.abot, .abot td, .abot th { vertical-align: bottom; }

div.bigline { padding: 2px 0; }
.blue { color: #00a; }
.gray { color: #888; }
.nobr { white-space: nowrap; }
.wsnorm { white-space: normal; }
.inborder { width: 598px; }
.block { width: 100%; }

table.contact {
	width: 100%;
	border-spacing: 0;
}
table.contact tr td {
	max-width: 50%;
}
table.contact tr td.ctlabel {
   width: 40%;
   max-width: 40%;
   text-align: right;
   padding-right: 6px;
}
.dilabel {
   width: 40%;
   max-width: 40%;
   text-align: right;
   padding-right: 6px;
}
.ctcselector select {
	width: 90%;
	max-width: 90%;
}
.ctcselector {
	text-align: center;
}

input, textarea, select { font-size: 100%; }

/* Styles */
#footer, #content, input, td, th, p, div, select,textarea,caption {
	color: #333;
}

#content {
	margin-top: 3px;
	margin-bottom: 3px;
}

#footer, #boundingbox {
	//min-width: 600px;
	padding: 0;
	margin: 0 auto;
}

body {
	margin: 0;
	padding: 0;
	color: #000;
	height: 100%;
}
body#admin {
	background: #fff;
}

img { border: none; }

a { color: #00f; }
a:visited { color: #808 }
a:active { color: #f00; }

a.nochg { color: #00f; }

.red { color: #f00;}
.yellow { color: #c90;}
.green { color: #090; }
.bntred { background-color: #f00; }
.bntyellow { background-color: #fc0; }
.bntgreen { background-color: #090; }
.btred { background-color: #f99; }
.btyellow { background-color: #ff0; }
.btgreen { background-color: #0f0; }
.statusbox { margin-top: 1px; padding: 0 3px; }

tr.tdred td { background-color: #f99; }
tr.tdyellow td { background-color: #ff0; }
tr.tdgreen td { background-color: #0f0; }

.width {
	width: 600px;
}
/*
 * the style below is necessary to accommodate an IE glitch; our current
 * styling requires 14 pixels less width for the invoice display.
 */
.invoice_width {
	width: 586px;
}

#masthead {
	margin: 0;
	padding: 0;
	border: none;
	width: 100%;
}

/* myaccount */
#menu li {
	margin: 0 0 0 10px;
	list-style-type: none;
}
#menu a {
	text-decoration: none;
}
#menu h2 {
	margin-bottom: 0;
	padding-bottom: 0;
}
#menu div.sub1 {
	padding-left: 1.5em;
	margin: 0 10px;
}
#menu .itemaddendum {
	font-size: 80%;
	white-space: nowrap;
}

b { font-size: inherit; font-weight: bold; }
b.weak { font-size: inherit; font-weight: bold; color: #666; }

pre,tt {
	font-family: monospace;
	font-size: inherit;
}

em {
	font-weight: bold;
	font-style: normal;
	color: #f00;
	background-color: transparent;
	font-size: inherit;
}
.nobold { font-weight: normal; }
em.plain { color: #666; }
em.reduct { color: #aaa; }

.optional { color: #f00; }
.optionalspan {
border-left: 1px solid #f00;
}
.optionalspan div {
padding-left: 4px;
vertical-align: middle;
color: #f00;
}

form {
	padding: 0;
	margin: 0;
	display: inline;
}

input, select {
	font-size: inherit;
}

select {
	max-width: 15em;
	margin-bottom: 2px;
	padding: 0 2px;
}

input[type=submit] {
	border-left:  1px solid #999;
	border-top:   1px solid #999;
	border-right: 1px solid #666;
	border-bottom:1px solid #666;
	padding: 2px;
	margin: 1px 0;
}
input[type=submit]:hover {
	background-color: #fff;
}
input[type=submit]:active {
	border-left:  1px solid #666;
	border-top:   1px solid #666;
	border-right: 1px solid #999;
	border-bottom:1px solid #999;
}
input:focus  {
	border:  1px solid #000;
}

input[type=submit] {
	background-color: #eee;
}

input.logoutbutton {
	color: #000;
	background-color: #fff;
}
.sbutton_text {
	line-height: 2;
}
.sbutton {
	border-left:  1px solid #999;
	border-top:   1px solid #999;
	border-right: 1px solid #666;
	border-bottom:1px solid #666;
	padding: 2px;
	margin: 0 2px;
}

input.cbox {
	padding: 2px 0 0 0;
	margin: 0 2px;
	vertical-align: middle;
}

input.box, input.opt_box, textarea.box, div.box, span.box {
	border-left:  1px solid #999;
	border-top:   1px solid #999;
	border-right: 1px solid #666;
	border-bottom:1px solid #666;
	padding: 1px 2px 1px 3px;
	background-color: #fff;
	margin-bottom: 2px;
}
input.box:focus, textarea.box:focus {
	border: 1px inset #000;
}
input.opt_box {
}
input.error, input.error:focus {
	border: 2px inset #f66;
}

label {
	cursor: pointer;
}

#debug, .debug {
	background-color: #fff;
	padding-left: 5px;
	font-family: monospace;
	white-space: pre;
	display: none;
}

.nodisplay { display: none; }

tr:target td {
	background-color: #fff;
}
tr:target td input.box {
	border: 1px inset #f00;
}
.documentation *:target {
	background-color: #eee;
	padding: 0 2px;
}
.documentation {
	text-align: left;
}
.documentation li {
	margin-bottom: 1em;
}
.documentation .quote {
	margin: 0 8% 0 10px;
	text-align: left;
}
.documentation .quote p {
	margin-top: 0;
}
.documentation h2, .documentation h1 {
	font-size: 100%;
	font-weight: bold;
	margin: 4px 0;
	padding: 0;
}
.documentation h1 {
	margin: 4px 0;
	padding: 0;
}

ul {
	list-style-type: square;
	margin-top: 0;
	margin-left: 18px;
	margin-bottom: 0;
	padding-left: 0;
}
li {
	margin-bottom: 3px;
	text-align: left;
}
li.nomark, ul.nomark li {
	list-style: none;
}

.heading {
	color: #000;
	background-color: #c0c0c0;
	padding: 4px;
	font-size: medium;
	font-weight: bold;
}

.info {
	color: #000;
	padding: 4px 0;
	background-color: #eee;
	vertical-align: top;
}

.info .error {
	background-color: #fff;
}

/* This will be overriden by rt_reg.css */
div.bank_receipt {
   color: #000;
   background-color: #fff;
   border: 1px solid #999;
   padding: 1em 3em;
}
div.bank_receipt pre {
   white-space: pre;
   font: 100%/100% courier, monospace;
}

.cc_receipt {
	color: #000;
	background-color: #fff;
	border: 1px solid #999;
	padding: 0 8px;
	margin-left: 20px;
	margin-right: 20px;
	white-space: pre;
	font: 100%/100% courier, monospace;
}

.note {
	color: #000;
	background-color: #fff;
	padding: 12px;
	border-left:  1px solid #999;
	border-top:   1px solid #999;
	border-right: 1px solid #666;
	border-bottom:1px solid #666;
	margin: 6px 6px;
	text-align: left;
}

.buttons { /* only in rt_reg/admin_registration.tt */
	color: #000;
	padding: 2px;
	background-color: #c0c0c0;
	text-align: center;
}

.search_form {
	white-space: normal;
	padding: 2px;
}
.search_form form {
	padding: 0;
	margin: 0;
}
.row_1 td, .row_1 th, .row_1_break td, .row_1_break th {
	background-color: #eee;
	padding: 2px 6px 2px 2px;
}
.row_2 td, .row_2 th, .row_2_break td, .row_2_break th {
	background-color: #fff;
	padding: 2px 6px 2px 2px;
}
tr.change td, tr.change th {
	background-color: #ffc;
	padding: 2px 6px 2px 2px;
	vertical-align: baseline;
}
tr.change th, tr.edit th {
	text-align: right;
}
.row_1 .last, .row_1_break .last, .row_2 .last, .row_2_break .last, tr.change .last {
	padding: 2px 2px 2px 2px;
}
/* FIXME: use info row as generic qualifier above, row_1, row_2 for colour distinction */
.inforow .qualifier {
	font-weight: normal;
	font-size: 75%;
	padding: 0 0.5em;
}
.breakbeee td, .breakbeee th, th.breakbeee {
	border-bottom: 1px solid #eee;
}
.breakb td, .breakb th, .row_1_break td, .row_1_break th, .row_2_break td, .row_2_break th, th.breakb {
	border-bottom: 1px dotted #666;
}
td.breakr, th.breakr, .breakr td, .breakr th {
	border-right: 1px solid #ddd;
}
.breakt td, .breakt th {
	border-top: 1px dotted #666;
}
.tbreak td, .tbreak th,  .row_1_tbreak td, .row_1_tbreak th, .row_2_tbreak td, .row_2_tbreak th {
	border-top: 1px dotted #666;
}

.apad { padding: 6px; }
table.lpad td, .lpad {
	padding-left: 6px;
}
table.rpad td, .rpad {
	padding-right: 6px;
}
.rowlabel {
	font-weight: bold;
	text-align: right;
	white-space: nowrap;
	width: 50%;
}
.rowdata div {
	padding-left: 6px;
}
.dsubwidget {
	margin: 0px 0px 10px 0px;
}
.dnotewidget {
	margin: 1px 4px;
	text-align: justify;
}
table.rpads td, .rpads {
	padding-right: 2px;
}
table.bpad td, .bpad {
	padding-bottom: 2px;
}
table.summary {
	overflow:scroll;
	border: 1px solid black;
	padding: 0;
	margin: 0;
}
table.summary th {
	text-align: left;
	border-bottom: 1px solid #000;
	padding: 2px;
}
table.summary td {
	vertical-align: top;
	border-bottom: 1px solid #000;
	padding: 2px;
}
table.summary tr.noborder td {
	vertical-align: top;
	border: none;
	padding: 2px;
}

/* XH0331: paypal button is annoying. */
table.bspacer { margin: auto; }
table.bspacer td { vertical-align: top; }
table.bspacer .pp_button {
   border: 1px solid transparent;
}

table#cardinfo {
	border: 1px solid #333;
	width: 100%;
}
table#cardinfo tr td {
	padding: 0 6px;
}
table#cardlist {
	border: 1px solid #333;
	margin: 2px 0;
	width: 100%;
}

table.item {
	border: 1px solid black;
	padding: 0;
	margin: 0;
}
table.item td {
	padding: 1px 2px;
}
table.item th {
	font-weight: bold;
	text-align: right;
	padding: 1px 10px;
	vertical-align: top;
	white-space: pre;
	width: 1px;
}

table {
	border-spacing: 0;
}

div.options {
	background-color: #ddd;
	border: 1px solid #000;
	border-top: none;
	margin-top: 0;
	padding: 2px 6px 2px 2px;
}

.headbb {
	border-bottom: 1px solid #666;
}

.head td, td.head, .headt td, td.headt {
	border-bottom: 1px solid #666;
	padding: 2px 6px 2px 2px;
	background-color: #ddd;
	font-weight: bold;
}
.headt td, td.headt {
	border-top: 1px solid #666;
}
.head .last, .headt.last {
	padding: 2px;
}

.noborder, .noborder td, .noborder th {
	border: none;
}

tr.foot td {
	background-color: #ddd;
	border-top: 1px solid #666;
	border-bottom: none;
	padding: 2px 6px 2px 2px;
}

.topborder, .topborder td, .topborder th {
	border-top: 1px solid #000;
}

.invoice {
	border: 1px solid #000;
	padding: 6px;
}
.invoice .details_list {
	border-top: 1px solid #000;
}
.invoice .details_list td {
	padding: 2px 2px;
}
.invoice .details_list td.break {
	border-bottom: 1px dotted #000;
}
.invoice .invoice_totals {
}
.invoice .invoice_totals td {
	margin-top: 4px;
	padding: 1px 2px 1px 20px;
}
.invoice td {
	vertical-align: top;
}
.invoice .break {
	border-top: 1px solid #000;
	margin-bottom: 6px;
}
.invoice table.history {
	border: 1px solid #000;
}
.invoice .history td {
	padding: 2px 5px;
}

table.card_types {
	border: 1px solid #000;
	border-collapse: collapse;
}
.card_types td {
	white-space: pre;
	padding: 1px 3px;
	border: 1px solid #000;
}
.card_types .head {
	padding: 0;
	margin: 0;
}

.payment_status a {
	background-color: #fff;
	font-weight: bold;
	text-align: center;
	display: block;
	padding: 4px 6px;
}
.payment_status a.selected, .payment_status a:hover {
	background-color: #dde;
}
.payment_status td {
	border: 1px solid #000;
	border-bottom: none;
}
.payment_status td.nb {
	border: none;
}

table.summary_detail {
	border: 1px solid black;
}
.summary_detail .superhead td {
	border-bottom: 1px solid #000;
	padding: 12px 2px 2px 6px;
	font-weight: bold;
}

.expires_soon {
	background-color: #ffc;
}
.expired {
	background-color: #faa;
}

abbr, acronym, span.abbr {
	border-bottom: 1px dashed #000;
	cursor: help;
}

.pad_this, tr.pad_this td, tr.pad_this th {
	padding: 1px;
}
.pad_this_more {
	padding: 6px;
}

.nav_null {} /* zero effect no-print class */
.navigation_area {
	margin: 9px 0;
	padding: 2px;
}
.navigation_area li {
	margin: 0;
}

/* colorization - (most likely candidates for skinning) */
table.xborder {
	border-top: 1px solid #333;
	border-left: 1px solid #333;
}
table.xborder tr td {
	vertical-align: baseline;
}
table.xborder tr th {
	vertical-align: bottom;
}
table.xborder tr td, table.xborder tr th {
	padding: 1px 2px;
	border-bottom: 1px solid #333;
	border-right: 1px solid #333;
}
table.bordered, div.bordered, .bord {
	border: 1px solid #333;
}
table.bordered, div.bordered {
	background-color: inherit;
	margin: 4px 0;
	padding: 0;
}

div.hide {
	float: right;
	margin: -7px -2px 0 0;
	padding: 0;
	font-size: 90%;
}
div.hide a, div.hide a:visited
{
	color: #bbb;
}
span.error {
	font-weight: bold;
	color: #f00;
}
span.error .normal, span.message .normal {
	color: #000;
}
span.message {
	font-weight: normal;
	color: #00f;
}
span.message a {
	font-weight: bold;
	color: #00f;
}
span.error .nobold, span.message .nobold {
	font-weight: normal;
}

.error div.additional, .message div.additional {
    padding-left: 1em;
    font-size: 95%;
    white-space: pre-line;
}

div.debugmsg { border: 3px solid #FA0; background: #FC6; font-size: 80%; font-family: monospace; }
div.debugmsg div.msgtagger { color: #fff; font-weight:bold; float: right; }
div.message { border: 1px solid #00a; }
div.error   { border: 1px solid #a00; }
div.mblock  { border: 1px solid #000; }
div.message, div.error, div.mblock, div.debugmsg {
	margin-top: 4px;
	padding: 8px;
	text-align: left;
}

.msgblock {
	margin-bottom: 4px;
}

div.company_footing {
	padding: 0;
	margin: 10px auto 0 auto;
}
div.company_heading {
	padding: 1px;
	margin: 0 auto 2px auto;
}
div.company_heading, div.company_footing {
	background-color: #000;
	color: #fff;
	border: 1px solid #000;
	text-align: center;
	font-weight: bold;
}
#admin div.company_heading, div.company_footing {
	font-size: 80%;
}

.bg {
	background-color: #fff;
}
tr.light, tr.lighth, div.light, span.light {
	background-color: #eee;
}
tr.lighth:hover {
	background-color: #ddd;
}
tr.medium {
	background-color: #c0c0c0;
}
tr.medium .hl { /* column heading hilight */
	border: 1px dotted #eee;
	padding: 0 2px;
}
tr.medium .nohl { /* column heading no-hilight */
	border: 1px dotted transparent;
	padding: 0 2px;
}
tr.markchange {
	background-color: #ffc;
}
tr.heading {
	background-color: #c0c0c0;
	border-bottom: 2px solid #fff;
}
tr.heading th {
	padding: 6px 0;
}
tr.heading th h3 {
	margin: 0;
}
tr.subheading {
	background-color: #eee;
	padding: 0;
}
tr.subheading th div.edge {
	font-weight: bold;
	background-color: #c0c0c0;
	margin: 0 -1px;
}
tr.subheading th div.tpad {
	margin-top: 4px;
}
tr.subheading2 {
	background-color: #eee;
}
tr.subheading2 th div.edge{
	font-weight: normal;
	margin-top: 4px;
	border-top: 1px dotted #fff;
	border-bottom: 1px dotted #fff;
	
}
tr.footer {
	background-color: #c0c0c0;
	border-top: 2px solid #fff;
}

.fleft { float: left }
.fright { float: right }

table.definition caption {
	text-align: left;
	padding-bottom: 4px;
}
table.definition th {
	vertical-align: top;
	text-align: left;
	padding-right: 4px;
}
table.definition td {
	vertical-align: top;
	padding-bottom: 4px;
}
table.definition em {
	color: #000;
	font-weight: normal;
}

/* privacy widget */
#privacy #privacy_note {
	margin-top: 0.5em;
	font-size: 90%;
}
#privacy em {
	font-weight: normal;
}
#privacy fieldset {
	margin: 0;
	padding: 0.2em 0;
	border: none;
	border-top: 0.1em solid #666;
}
#privacy legend {
	font-weight: bold;
   margin-left: 2em;
}

#privacy div.simpleset {
	margin: 0;
	padding: 0.2em 0;
	text-align: center;
}

#optionsbuttons .error{
	border: 1px solid #f00;
	background: #fff;
	line-height: normal;
	padding: 0.2em 0.4em;
}

#domlist table {
	margin: auto;
}
#domlist table td {
	white-space: nowrap;
	padding: 1px 0.5em;
}

#dc td {
	padding: 0;
}

#adminsp {
}
#adminsp div {
	margin: 4px 0;
}

#headlink {
	float: right;
	color: #fff;
	padding: 1px 6px;
	font-size: 90%;
}
#headlink a {
	color: #fff;
}

div.legend div.r {
	float: right;
}
div.legend div.l {
	float: left;
}
div.legend div {
	font-size: 80%;
	text-align: center;
	width: 18%;
	margin: 0 1% 0 0;
	border: 1px solid #666;
}
div.legend div.noborder {
	border: none;
}
.noborder {
	border: none;
}

#errdbg { display: none; }
#msgdbg { display: none; }



/* import from ca_manage.css */
fieldset.childfs { border: 1px solid #666; margin: 4px -10px 0 0; padding: 0 1em 2px 1em; }
fieldset.childfs legend { font-weight: bold; padding: 0 3px 0 3px; vertical-align: top; }
table.c11 { border-spacing: 0; }
table.c11 tr td { vertical-align: top; }

table.c11 {  }
table.c11 tbody tr td { vertical-align: baseline; }

.bttnrw { text-align: center; margin: 4px -12px 0 0; padding: 10px 1em 2px 1em; }

ul.crumbs {
	margin: 8px 0px;
	padding: 0px 4px 0px 0px;
}
ul.crumbs li {
	display: inline;
	font-size: 80%;
	font-weight: bold;
	white-space: nowrap;
}
ul.crumbs li.root {
}
/*
 * IE does not do :before without the right DTD.
 * I cannot insert the rigth DTD because either our HTML is broken, or IE is
 * (likely both).
 * So, replaced with plain text in the template.
ul.crumbs li:before {
	content: ' - ';
}
ul.crumbs li:first-child:before {
	content: '';
}
*/
ul.crumbs li a:visited {
	color: blue;
}
ul.crumbs li.here a,
ul.crumbs li.here a:visited {
	color: inherit;
	text-decoration: none;
}

/* end import from ca_manage.css */
