@import url(undohtml.css);

table {
	border-spacing: 0;
}
html, body {
	height: 100%;
}

/*
font:
	Set font-size to a percentage preventing a Windows IE "extreme font re-sizing" bug.
	Set font-size slightly larger than 100% to repair Opera rounding errors.
	Set less than 101% to prevent Safari errors (in plt.css)
*/
body {
	font:100.01% georgia, "times new roman", times, serif;
	color: #000;
	background: #fff;
	/*letter-spacing: 0;*/
	line-height: 1.4;
}

/*******************************************************
 *
 * Standard typography
 */

/* no borders for image links */
a img {
	/*border: 0;*/
	/*this rule causes a serious problem with the menu system*/
}
img.printOnly {
	display: none;
}
div.printOnly {
	display: none;
}
span.printOnly {
	display: none;
}

/* moz 1.0/1.1/1.2.1, net 7.0/7.01 make this way too small, but i'm not going to go larger because
 monospace tends to run you into overflow pretty quick. prior moz and net are okay.
 */
pre {
	font-family: monospace;
	font-size: 0.85em;
	font-size: 1.0em;
}

strong, b {
	font-weight: bold;
}

.clearer {
	clear: both;
	display:block;
	font-size:1px;
	height:1px;
	line-height:1px;
	margin-bottom:-1px;
	}

/* other */
hr {
	color: #000000;
	background-color: #000000;
	height: 1px;
}
p {
	margin-top: 0.3em;
	margin-bottom: 0.3em;
}

a.linkSide {
	margin-left: 2.5em;
}

strong, b {
	font-weight: bold;
}

/*ul {
	margin-left: 1.9em;
	margin-top: 0.4em;
	margin-bottom: 0.4em;
}*/
ol {
	margin-left: 2.2em;
	margin-top: 0.4em;
	margin-bottom: 0.4em;
}

dl {
	margin-top: 0.4em;
	margin-bottom: 0.4em;
	}
	dl dt {
		width: 6em;
		padding: 0 0 0.25em 0;
		float: left;
		text-align: right;
		margin: 0;
		clear: left;
		}
	dl dd {
		margin-left: 6.5em;
		padding: 0 0 0.25em 0;
		}
		dl dd p {
			margin-top: 0;
			margin-bottom: 0.2em;
		}

/**************************
 *
 * confirmaton
 * styles for the confirmation pages
 */
.confirmation {
	margin-top: 5%;
	margin-bottom: 5%;
	margin-left: 10%;
	margin-right: 10%;
	text-align: center;
}
.confirmation h1 {
	font-size: 1.2em;
	padding: 0.3em;
	margin-top: 5%;
	margin-bottom: 5%;
}
.confirmation h2 {
	font-size: 1.1em;
	padding: 0.3em;
	margin-top: 5%;
	margin-bottom: 5%;
}
.confirmation .question {  /* copy to ask a user to confirm */
	color: #FF0000;
}

/**************************
 *
 * notice
 * styles for general notices
 */
.notice {
	margin-top: 0;
	margin-bottom: 0;
	margin-left: 10%;
	margin-right: 10%;
	text-align: center;
}
.notice h1 {
	font-size: 1.2em;
	padding-top: 1.2em;
	padding-left: 0em;
	padding-right: 0em;
}
.notice h2 {
	font-size: 1.1em;
	padding-left: 0em;
	padding-right: 0em;
	margin-bottom: 5%;
}

/***********************
 *
 * Action layout
 */
/* div alignment elements */
div.topActions { /* buttons/links above the form */
	display: none;
	text-align: right;
	margin: 1.0em 1.0em;
}
div.topRightCornerActions { /* buttons/links above the form */
	text-align: right;
	margin: 1.0em 1.0em;
	float: right;
}
div.bottomActions { /* buttons/links below the form */
	display: none;
	text-align: center;
	margin: 1.0em 1.0em;
}
div.bottomActions .item {
	margin: 0em 1.0em;
}
div.bottomActions .focus {
	font-size: 1.3em;
	font-weight: bold;
}
div.pageNav { /* pageNavigation */
	margin: 0.5em auto;
	text-align: center;
}
div.confirmActions { /* buttons/links below confirmation and notices */
	text-align: center;
	margin: 2.0em 0;
}
div.confirmActions a {
	margin-left: 1.0em;
	margin-right: 1.0em;
}
div.confirmActions input.button {
	width: auto;
	padding-left: 1.0em;
	padding-right: 1.0em;
}

/***********************
 *
 * form elements
 */
input {
	width: 16em;
	font-size: 0.96em;
	padding: 0.02em 0.05em;
	margin-top: 0.2em;
	font-family: Times New Roman, serif;
}
input.calField {
	width: 14.1em;
}
input.calFieldDouble {
	width: 6em;
}
input.fieldDouble {
	width: 8.5em;
}
input.checkbox,
input.radio {
	width: 1.9em;
}
img.button,
input.button {
	width: auto;
	margin-left: 1.0em;
	margin-right: 1.0em;
	padding-left: 1.2em;
	padding-right: 1.2em;
	overflow: visible;  /* for IE */
}
input.number {
	text-align: right;
	width: 4em;
}
input.phone {
	width: 8em;
}
input.phoneext {
	width: 4em;
}
input.file {
	width: 24em;
}
.calendarPick {
	cursor: hand;
	margin-bottom: -0.17em;
	margin-left: 0.1em;
}
select {
	font-size: 0.96em;
	width: 16.7em;
	margin-top: 0.2em;
}
select.double {
	width: 8em;
}
option {
	padding: 0 2em 0 0.5em;
}
textArea {
	font-family: Times New Roman, serif;
	font-size: 0.96em;
	padding: 0.05em 0.1em;
	margin-top: 0.2em;
	width: 32em;
}
img.editIcon {
}

/* a reference list of check boxes */

.referenceList {
	width: 70%;
	padding-bottom: 0.4em;
}
.referenceList span.item {
	display: -moz-inline-box;
	display: inline-block;
	width: 20em;
	white-space: nowrap;
}
.referenceList span.item input.checkbox {
}

/* use a table layout to ensure styles go to the bottom of the window.
table#bodyLayout {
	height: 100%;
	width: 100%;
}
table#bodyLayout td {
	vertical-align: top;
}
table#bodyLayout td#header {
	border: 1px solid red;
	height: 96px;
}
table#bodyLayout td#nav {
	border: 1px solid blue;
	float: left;
	width: 20%;
	height: 85%;
}
table#bodyLayout td#body {
	border: 1px solid green;
	height: 85%;
}
*/


/***********************
 *
 * tables
 */

/* error table */
table.error {
	margin: 0.5em auto;
	font-size: 0.94em;
	border-collapse: collapse;
}
table.error td.label {
	color: #FF0000;
	padding: 0em 0.2em;
	text-align: right;
	vertical-align: baseline;
	white-space: nowrap;
}
table.error td {
	color: #FF0000;
	padding: 0em 0.2em;
	vertical-align: baseline;
}

/* pageData */
table.pageData {  /* partial width form */
	margin: 0 auto;
	border-collapse: collapse;
}
table.pageDataFull {  /* full width form */
	margin: 0;
	width: 100%;
}
table.pageData td,
table.pageDataFull td {
	height: 1.9em;
	padding-top: 0.3em;
}
table.pageData td.label,
table.pageDataFull td.label {
	text-align: right;
	padding-right: 0.5em;
	white-space: nowrap;
}
table.pageData td.emailConfirmLabel,
table.pageDataFull td.emailConfirmLabel {
	text-align: right;
	padding-right: 0.5em;
	white-space: nowrap;
	visibility: hidden;
}
table.pageData td.emailConfirm,
table.pageDataFull td.emailConfirm {
	visibility: hidden;
}
table.pageData td.copy,
table.pageDataFull td.copy {  /* copy in a cell by itself between fields */
	text-align: center;
}
table.pageData td.question,
table.pageDataFull td.question {  /* copy in a cell above buttons */
	text-align: left;
	color: #FF0000;
}
table.pageData td.labelTop,
table.pageDataFull td.labelTop {
	text-align: right;
	vertical-align: top;
	padding-right: 0.5em;
	white-space: nowrap;
}
table.pageData td.short,
table.pageDataFull td.short {
	padding-top: 0em;
}
table.pageData input.button,
table.pageDataFull input.button {
	margin-top: 1.0em;
	margin-bottom: 1.0em;
}
/* double wide
!!! add here */
/* triple wide
!!! add here */
/*
table.pageData td.checkboxes,
table.pageDataFull td.checkboxes {
	border: 1px solid green;
}
*/

/* table data */
table.tableData {  /* partial width table */
	font-size: 0.9em;
	margin: 0.5em auto;
	border-collapse: collapse;
}
table.tableDataFull {  /* full width table */
	font-size: 0.9em;
	margin: 0;
	width: 100%; /* 520px */
	border-collapse: collapse;
}
table.tableData th,
table.tableDataFull th {
	padding: 0.5em 0.6em 0.5em 0.6em;
	color: black;
	border: 1px solid black;
}
table.tableData th A:link,
table.tableData th A:visited,
table.tableData th A:active,
table.tableData th A:hover,
table.tableDataFull th A:link,
table.tableDataFull th A:visited,
table.tableDataFull th A:active,
table.tableDataFull th A:hover {
	color: black;
}
table.tableData tr,
table.tableDataFull tr {
	background-color: white;
}
table.tableData tr.even,
table.tableDataFull tr.even {
	background-color: #dfdddf;
}
table.tableData td,
table.tableDataFull td {
	padding: 0.3em;
	text-align: center;
	vertical-align: top;
	border-top: 0;
}
table.tableData th input,
table.tableDataFull th input,
table.tableData th select,
table.tableDataFull th select {
	width: auto;
	font-size: 0.95em;
	margin-top: 0.2em;
}
table.tableData td input,
table.tableDataFull td input,
table.tableData td select,
table.tableDataFull td select {
	width: auto;
	font-size: 0.95em;
	margin-top: 0.15em;
}

/* embedded tables */
table.tableData td td,
table.tableDataFull td td {
	border: 0;
	font-size: 1.0em;
	padding: 0em;
	color: #000000;
	text-align: left;
}
table.tableData td td input,
table.tableDataFull td td input,
table.tableData td td select,
table.tableDataFull td td select {
	width: auto;
	font-size: 1.0em;
}
table.tableData td td.label,
table.tableDataFull td td.label {
	text-align: right;
	white-space: nowrap;
}

/* text data */
table.tableData th.text,
table.tableDataFull th.text {
	text-align: left;
}
table.tableData td.text,
table.tableDataFull td.text {
	text-align: left;
}
/* action data */
table.tableData th.action,
table.tableDataFull th.action {
}
table.tableData td.action,
table.tableDataFull td.action {
}
/* number data */
table.tableData th.number,
table.tableDataFull th.number {
	text-align: right;
}
table.tableData td.number,
table.tableDataFull td.number {
	text-align: right;
}
table.tableData th.number input,
table.tableDataFull th.number input {
	text-align: right;
}
table.tableData td.number input,
table.tableDataFull td.number input {
	text-align: right;
}
/* calander data */
table.tableData th.calField,
table.tableDataFull th.calField {
}
table.tableData td.calField,
table.tableDataFull td.calField {
	white-space: nowrap;
}
table.tableData th.calField input,
table.tableDataFull th.calField input {
	width: 7em;
}
table.tableData td.calField input,
table.tableDataFull td.calField input {
	width: 7em;
}

/***********************
 *
 * Receipt page
 */
#receipt {
	font-size: 10pt;
}
#receipt h1 {
	font-size: 12pt;
	text-align: center;
	border-bottom: 1px solid black;
	margin: 0;
}
#receipt div.field {
	clear: left;
	display: block;
}
#receipt div.field label {
	display: block;
	float: left;
	text-align: right;
	width: 10em;
	padding-right: 0.3em;
}

#receipt #invoiceNumber {
	clear: right;
	float: right;
	width: 2in;
	border: 1px solid black;
	padding: 0.05in;
}
#receipt #invoiceNumber div.field label {
	width: 8em;
}

#receipt #hpc {
	margin: 0.5em 0 0.5em 0;
	width: 30em;
}
#receipt #ein {
	border: 1px solid black;
	padding: 0.05in;
	width: 3in
}

#receipt #billTo {
	margin: 1.0em 0;
	width: 3in;
	border: 1px solid black;
	padding: 0.05in;
}
#receipt #billTo div.field label {
	width: 6em;
}

#receipt #project,
#receipt #terms,
#receipt #po {
	float: right;
	width: 10em;
	border: 1px solid black;
	padding: 0.5em;
	margin: 1.0em 0.3em 0.3em 0.3em;
	text-align: center;
}
#receipt #project {
	width: 15em;
	margin-right: 0;
}

#receipt table#lineItems {
	clear: right;
	margin: 0 0 1.5em 0;
	border-collapse: collapse;
	width: 100%;
}
#receipt table#lineItems th,
#receipt table#lineItems td {
	border: 1px solid black;
	padding: 0.05in;
	vertical-align: baseline;
}
#receipt table#lineItems td.quantity,
#receipt table#lineItems td.amount,
#receipt table#lineItems td.rate {
	text-align: right;
}
#receipt table#lineItems tr.totalLine td.description,
#receipt table#lineItems tr.totalLine td.quantity {
	border: 0;
}

#receipt #paid {
	float: right;
	width: 3in;
	border: 1px solid black;
	padding: 0.05in;
}
#receipt #paid div.field label {
	width: 2.0in;
}


