
/* BOF system */

/* general */
body {
	padding-left: 20px;
	font-family: monospace;
	font-size: 1.2em;
/*	font-family: verdana;
	font-size: 1em;*/
}
.roundBorder {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-khtml-border-radius: 4px;
	border-radius: 4px;
}
.centered {
	/* only works width fixed width and height */
	position: absolute;
	top:0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

/* login */
#login {
	/* note: js adds class and fixed width and height for centering */
	display: inline-block;
/*	width: 300px;
	height: 50px;*/
	padding: 6px;
	border: 2px solid gray;
	background-color: orange;
}
#login label {
	width: 30%;
}
#login input {
	width: 55%;
}
#login input[name="submitLogin"] {
	display: none;
}
#loginMessages {
}

/* message */
#messageBox {
	/** you need border or padding to avoid collapsing margins (if messages have margins), so that login box size fix by js works **/
	padding: 1px;
}
#messageBox .message {
	padding: 3px;
	border: 2px solid black;
	white-space: nowrap; // firefox zoom causes line wraps, but div height does not adapt
	display: block;
	margin: 2px;
	width: auto;
}
#messageBox .messageInfo {
	color: darkgreen;
	border-color: darkgreen;
}
#messageBox .messageError {
	color: red;
	border-color: red;
}
.invalidField {
	color: red;
	/*background-color: mistyrose;*/
}

/* navi */
#navi {
	background-color: #f0f0f0;
	padding: 1px;
}
#navi a {
	display: block;
	width: 100%;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-khtml-border-radius: 3px;
	border-radius: 3px;
}
#navi img {
	padding-right: 3px;
}
li {
}
li a {
	text-decoration: none;
	color: gray;
}
ul {
	display: inline;
	padding-left: 0px;
}
ul li {
	display: inline-block;
	padding-right: 5px;
}
ul li ul li{
	display: block;
	padding: 0px;
}

/* buttons */
.button {
/*	display: inline-block;
	border: none;
	width: 22px;
	height: 22px;
	background-image: url("../images/bg_22x22.png");
	background-size: 100%;
	background-repeat: no-repeat;
	padding-left: 5px;
	padding-top: 2px;
	font-size: 1.1em;*/
	/*border: 1px solid green;*/
	
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
/*	width: 40px;
	height: 40px;*/
	width: 22px;
	height: 22px;
	padding: 0px;
	
	text-decoration: none;
	/*padding: 1px 4px 1px 4px;*/
	border: 1px solid dimgray;
	background-color: whitesmoke;
	
	/*background-color: lightgray;*/
/*	border-left: 1px solid gray;
	border-top: 1px solid gray;
	border-right: 1px solid black;
	border-bottom: 1px solid black;*/

	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	-khtml-border-radius: 6px;
	border-radius: 6px;
	
	/*box-shadow: 2px 2px 2px gray;*/
	/*padding: 10px;*/
	/*vertical-align: middle;*/
	margin: 4px;
}
.button:hover {
	background-color: lightgray;
}
.button img {
	/*vertical-align: middle;*/
	margin: 0px;
	margin-top: 5px;
	margin-left: 5px;
}
.button {
	margin-left: 1px;
}
.buttonLabeled{ /* overrides some button stuff */
	width: auto;
	color: darkslategray;
}
.buttonSmall {
	/*border: 1px solid red;*/
	/*padding: 0px;*/
	margin-top: -2px;
	margin-bottom: -1px;
	width: 18px;
	height: 18px;
}
.buttonSmall img {
	margin-top: 3px;
	margin-left: 3px;
}
.naviCurrent {
	background-color: #d0d0d0;
	font-weight: bold;
}

/* modules */

.moduleTitle {
	display: block;
	padding: 1px;
	padding-left: 4px;
	margin: 2px 1px;;
	margin-bottom: 20px;
	background-color: #e0e0e0;
	font-size: 1.1em;
	font-weight: bold;
	color: darkslategray;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-khtml-border-radius: 4px;
	border-radius: 4px;
}

#tableCustomers td,
#tableCustomers th {
	padding: 1px;
	/*white-space: nowrap;*/
	white-space: normal;
	/*border: 1px solid silver;*/
}
.clickableTr:hover {
	background-color: lightgray;
}
.checkboxContainer {
	padding: 6px 10px 6px 4px;
}
.checkboxContainer:hover {
	/*background-color: #808080;*/
}
.shortSeparator {
	display: inline-block;
	width: 300px;
}
label {
	display: inline-block;
	width: 200px;
	text-align: right;
	padding-right: 8px;
	color: gray;
	font-weight: bold;
	margin-bottom: 4px;
	
	vertical-align: top;
	/*padding-top: 6px;*/ 
}
fieldset {
	padding: 6px;
	margin-bottom: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-khtml-border-radius: 4px;
	border-radius: 4px;
}
.sectionLabel {
	color: dimgray;
	font-size: 1.1em;
}
.thLabel {
	color: dimgray;
	background: none;
}
input, textarea, select, fieldset, button {
	font-family: inherit;
	margin: 1px;
	padding: 2px;
	border: 1px solid grey;
	background-color: ghostwhite;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-khtml-border-radius: 3px;
	border-radius: 3px;
}
input[readonly], textarea[readonly] {
	background-color: #e0e0e0;
}
.listfilterInput {
	width: 1px; /* size is set by javascript */
	display: none;
}
.squareButton {
	width: 1.7em;
	height: 1.7em;
	border: 1px solid grey;
}
#formCustomerEditable input[type=text],
#formCustomerEditable select,
.textareaFlat {
	height: 1.8em;
	width: 300px;
	padding-top: 0px;
	line-height: 1.2em;
}
#formCustomerEditable input[type=checkbox] {
	margin-top: 10px;
}
#formCustomerEditable label {
	padding-top: 6px;
/*	height: 1.8em;*/
}

.serviceSelector {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 900px;
	height: 400px;
	overflow: scroll;
	overflow-x: hidden;
	margin-left: -400px;
	margin-top: -200px;
	z-index: 99;
	background-color: silver;
	border: 2px solid darkgray;
	padding: 5px;
}
/*.serviceSelector_ok {
	width: 96%;
}*/
.serviceSelector table,
.serviceSelector_cancel,
#serviceSelector_filterInput {
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
	width: 99%;
	margin: 2px;
}
.serviceSelector_cancel {
	background-color: #e0e0e0;
}
.serviceSelectorServices {
	margin-top: 10px;
	width: 100%;
	height: 80%;
}

table {
	border: 2px outset silver;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	-khtml-border-radius: 6px;
	border-radius: 6px;
}
table pre {
	display: inline;
}
th {
	background-color: #f0f0f0;
}
th.headerGroup{
	color: gray;
}
tr:not(:last-child) td,
tr:not(:last-child) th {
	border-bottom: 2px ridge lightgray;
	vertical-align: top;
}
td:not(:last-child),
th:not(:last-child) {
	border-right: 2px ridge lightgray;
}
td {
	vertical-align: top;
}
table { /* make empty table cells show up */
	border-collapse: separate;
	empty-cells: show;
}

/* no border for services table when creating invoice/quotation */
#invoiceEditable #tableInvoiceServices,
#invoiceEditable #tableInvoiceServices td,
#invoiceEditable #tableInvoiceServices th,
#quotationEditable #tableQuotationServices,
#quotationEditable #tableQuotationServices td,
#quotationEditable #tableQuotationServices th
{
	border: none;
}

.invoicesTotalSummaryRow td {
	border: none;
	background-color: #f0f0f0;
	padding-top: 4px;
}
.invoicesTotalSummaryRow td:nth-child(3) {
	text-align: right;
}
.invoicesTotalSummaryGross {
	font-weight: bold;
}

.likePre {
    display: inline-block;
    font-family: monospace;
    white-space: pre;
}


.currentSortFieldHeader {
	font-weight: bold;
	color: blue;
}

.maintenanceDateRangeForm label,
/*.invoiceDateRangeForm label,
.showPaidInvoicesForm label {*/
.invoiceListOptionsForm label {
	vertical-align: bottom;
	width: auto;
	font-weight: normal;
	font-size: 0.9em;
}
.invoiceListOptionsForm label[for="listConfig_invoices_invoiceDateRangeFrom"] {
	width: 260px;
	margin-left: 58px;
}
.invoiceListOptionsForm label[for="listConfig_invoices_showPaidInvoices"] {
	width: 350px;
	margin-left: 2px;
}

.invoiceListOptionsForm label[for="listConfig_invoices_showPaidInvoices"] input[type="checkbox"] {
	margin-left: 9px;
	margin-top: 3px;
}
.maintenanceDateRangeForm input[type="button"],
.invoiceListOptionsForm input[type="button"] {
	margin-right: 10px;
}

/* EOF system */

/* BOF date picker */

/*body {
	font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
	font-size: .8em;
	}*/

/* the div that holds the date picker calendar */
.dpDiv {
	}


/* the table (within the div) that holds the date picker calendar */
.dpTable {
	font-family: Tahoma, Arial, Helvetica, sans-serif;
	font-size: 12px;
	text-align: center;
	color: #505050;
	background-color: #ece9d8;
	border: 1px solid #AAAAAA;
	}


/* a table row that holds date numbers (either blank or 1-31) */
.dpTR {
	}


/* the top table row that holds the month, year, and forward/backward buttons */
.dpTitleTR {
	}


/* the second table row, that holds the names of days of the week (Mo, Tu, We, etc.) */
.dpDayTR {
	}


/* the bottom table row, that has the "This Month" and "Close" buttons */
.dpTodayButtonTR {
	}


/* a table cell that holds a date number (either blank or 1-31) */
.dpTD {
	border: 1px solid #ece9d8;
	}


/* a table cell that holds a highlighted day (usually either today's date or the current date field value) */
.dpDayHighlightTD {
	background-color: #CCCCCC;
	border: 1px solid #AAAAAA;
	}


/* the date number table cell that the mouse pointer is currently over (you can use contrasting colors to make it apparent which cell is being hovered over) */
.dpTDHover {
	background-color: #aca998;
	border: 1px solid #888888;
	cursor: pointer;
	color: red;
	}


/* the table cell that holds the name of the month and the year */
.dpTitleTD {
	}


/* a table cell that holds one of the forward/backward buttons */
.dpButtonTD {
	}


/* the table cell that holds the "This Month" or "Close" button at the bottom */
.dpTodayButtonTD {
	}


/* a table cell that holds the names of days of the week (Mo, Tu, We, etc.) */
.dpDayTD {
	background-color: #CCCCCC;
	border: 1px solid #AAAAAA;
	color: white;
	}


/* additional style information for the text that indicates the month and year */
.dpTitleText {
	font-size: 12px;
	color: gray;
	font-weight: bold;
	}


/* additional style information for the cell that holds a highlighted day (usually either today's date or the current date field value) */ 
.dpDayHighlight {
	color: #4060ff;
	font-weight: bold;
	}


/* the forward/backward buttons at the top */
.dpButton {
	font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: gray;
	background: #d8e8ff;
	font-weight: bold;
	padding: 0px;
	}


/* the "This Month" and "Close" buttons at the bottom */
.dpTodayButton {
	font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: gray;
	background: #d8e8ff;
	font-weight: bold;
	}

/* EOF date picker */
