a.blacklink {
    color: #000000;
    text-decoration: none;
}

a.blacklink:hover {
    text-decoration: underline;
}

a.boldblacklink {
    color: #000000;
    font-weight: bold;
    text-decoration: none;
}
a.boldblacklink:hover {
    text-decoration: underline;
}

a.boldblackunderlinedlink {
    color: #000000;
    font-weight: bold;
    text-decoration: underline;
}

a.boldblackhighlightedlink {
    color: #000000;
    font-weight: bold;
    text-decoration: none;
    background-color: yellow;
}
a.boldblackhighlightedlink:hover {
    text-decoration: underline;
}

/*
 * table styles
 */
table.tableWithCellSidePadding th {
    padding-left: 6px;
    padding-right: 6px;
}

table.tableWithCellSidePadding td {
    padding-left: 6px;
    padding-right: 6px;
}

table.tableWithBorder th {
    border: 1px solid black;
    border-width: 1px;
    vertical-align: top;
    padding: 2px;
}

table.tableWithBorder td {
    border: 1px solid gray;
    border-width: 1px;
    vertical-align: top;
    padding: 2px;
}

table.tableWithPartialBorder th {
    border-top: 1px solid black;
    border-left: 1px solid black;
    border-width: 1px;
    vertical-align: top;
    background-color: #cccccc;
}

table.tableWithPartialBorder td {
    border-top: 1px solid gray;
    border-left: 1px solid gray;
    border-width: 1px;
    vertical-align: top;
}

table.tableWithBorderAndCellSidePadding th {
    border: 1px solid black;
    border-width: 1px;
    vertical-align: top;
    padding-left: 6px;
    padding-right: 6px;
}

table.tableWithBorderAndCellSidePadding td {
    border: 1px solid gray;
    border-width: 1px;
    vertical-align: top;
    padding-left: 6px;
    padding-right: 6px;
}

table.tableWithHorizontalRulesAndCellSidePadding th {
    border-top: 1px solid;
    vertical-align: top;
    padding-left: 6px;
    padding-right: 6px;
    background-color: #cccccc;
}

table.tableWithHorizontalRulesAndCellSidePadding td {
    border-top: 1px solid;
    vertical-align: top;
    padding-left: 6px;
    padding-right: 6px;
}

table.tableWithVerticalPadding th {
    vertical-align: top;
    padding-left: 6px;
    padding-right: 6px;
    padding-top: 8px;
    padding-bottom: 8px;
}

table.tableWithVerticalPadding td {
    vertical-align: top;
    padding-left: 6px;
    padding-right: 6px;
    padding-top: 8px;
    padding-bottom: 8px;
}

tr.rowWithBorder th {
    border: 1px solid black;
    border-width: 1px;
    vertical-align: top;
}

tr.rowWithBorder td {
    border: 1px solid gray;
    border-width: 1px;
    vertical-align: top;
}

tr.rowWithPadding th, tr.rowWithPadding td {
    padding: 2px;
}

th.cellWithBorder, td.cellWithBorder {
    border: 1px solid gray;
    border-width: 1px;
    vertical-align: top;
}
th.cellWithPadding, td.cellWithPadding {
    padding-left: 6px;
    padding-right: 6px;
}

td.subtotal {
    border-top: 1px solid;
}

td.total {
    border-top: 4px double;
}

tr.clickable th, th.clickable, tr.clickable td, td.clickable {
    cursor: pointer;
}

tr.searchResult {
    vertical-align: top;
}

table#advancedSearchOptionsTable td {
    text-align: right;
    padding-left: 3px;
    padding-right: 3px;
}

/*
 * text styles
 */
.boldText {
    font-weight: bold;
}
.italicText {
    font-style: italic;
}
.underlinedText {
    text-decoration: underline;
}

.blueText {
    color: #0000bb;
}
.redText {
    color: red;
}
.greenText {
    color: green;
}

.tinyText {
    font-size: 0.55em;
}
.smallText {
    font-size: 0.75em;
}
.mediumText {
    font-size: 1.125em;
}
.largeText {
    font-size: 1.5em;
}

/* background coloring
 */
.redBackground {
    background-color: #ffaaaa;
}
.greenBackground {
    background-color: #aaffaa;
}

/*
 * misc alignment
 */
span.alignedRow {
    font-size: 1.125em;
    display: inline-block;
    padding-left: 40px;
    width: 180px;
}

hr.pagebreak {
    page-break-after: always;
}

.nowrap {
    white-space: nowrap;
}
.centered {
    text-align: center;
}
.leftJustified {
    text-align: left;
}
.rightJustified {
    text-align: right;
}

div.universalLoginInfoHeader, div.universalNavLinksDiv, div.universalAdminSubcategoryNavLinksDiv, div.universalTopNavLinksDiv {
    font-family: Arial;
}
div.universalCommonNavLinksDiv {
    font-family: Arial;
    font-size: 75%;
}
div.universalAdminNavButtonsDiv {}

/*
 * mouseover highlight colors
 */
div#rowHighlightColor {
    background-color: #aaffaa;
}
div#selectRowHighlightColor {
    background-color: #44ee88;
}
div#adminRowHighlightColor {
    background-color: #aaaaaa;
}
div#adminSelectRowHighlightColor {
    background-color: #777777;
}
div#browseCellHighlightColor {
    background-color: #aaffaa;
}
div#inputRowHighlightColor {
    background-color: #dd88ff;
}
div#disableRowHighlightColor {
    background-color: #aaaaaa;
}
/*
 * input field normal and focus colors
 */
div#inputFieldQtyNormalColor, .inputFieldQtyNormalColor {
    background-color: #eeddcc;
}
div#inputFieldQtyFocusColor {
    background-color: #ddbb99;
}

/*
 * info message styles
 */
div#infoMessage, div#infoMessageAdmin {
    color: red;
}
div#closeInfoMessage {
    display: none;
    float: right;
    text-align: right;
    font-size: 0.75em;
    cursor: pointer;
}

/*
 * volunteer signup sheet styles
 */
div.volunteerSignupSheet {
    float: right;
    min-width: 140px;
    max-width: 200px;
    padding: 0;
    margin: 5px 5px 5px 10px;
    border: 2px solid black;
    font-size: 0.75em;
    background-color: #ACD7DD;
}
div#volSignupTitle {
    padding: 3px;
    border-bottom: 1px solid black;
    background-color: #9CC7F0;
}
div#volSignupBody {
    padding: 3px;
    list-style-type: none;
}

/*
 * specific page element styles
 */
tr.searchResultHeader th, table#orderItemsTable th, table#splitItemsTable th, .greyBackground {
    background-color: #cccccc;
}
table#adminUserMaintenanceTable, .lightGreyBackground {
    background-color: #eeeeee;
}
body#final_order #intro #pageHeader {
    margin-top: 10px;
    text-transform: uppercase;
}
div#orderIsRecurringNote {
    color: red;
    font-style: italic;
}
span#onlySaleCheckboxDiv.checkboxOn {
    background-color: #aaffaa;
}
/* all-table styles */
table#finalOrderTable {
    width: 100%;
}
table#orderItemsTable td, table#splitItemsTable td, table#groupOrderTable td, table#finalOrderTable td {
    vertical-align: top;
}
table#splitsSortSheetWeighedTable td, table#splitsSortSheetCountedTable td {
    text-align: right;
    vertical-align: top;
}
table#splitsSortSheetWeighedTable tr#noneRow td, table#splitsSortSheetCountedTable tr#noneRow td {
    text-align: left;
}
table#orderItemsTable th, table#splitRequestTable th {
    white-space: nowrap;
}
/* table column styles, including column-hiding */
table .QtyCol, table .PriceCol, table .TotalCol, table td.MaxTotalCol {
    text-align: right;
    white-space: nowrap;
}
table#splitItemsTable .DescriptionCol, table.searchResultsTable .DescriptionCol {
    min-width: 140px;
}
table td.OrderersCol, table .SizeCol, table#groupOrderTable .CodeCol,
table#groupOrderTable th.CategoryCol, table#groupOrderTable th.SubCategoryCol, table#groupOrderTable th.SubCategory2Col {
    white-space: nowrap;
}
table#orderItemsTable td.ActionCol, table#splitItemsTable td.NumCasesCol {
    white-space: nowrap;
    text-align: center;
}
table#groupOrderTable .SizeCol, table#finalOrderTable .CodeCol, table#finalOrderTable .SizeCol {
    text-align: left;
    padding-left: 15px;
}
table#finalOrderTable .ManufacturerCol, table#finalOrderTable .DescriptionCol {
    text-align: left;
}
/* hide category columns by default, since they were recently added and make table crowded, width-wise */
table .CategoryCol, table .SubCategoryCol, table .SubCategory2Col, table .SubCategory3Col,
table .EnteredAtCol, table .LastUpdatedCol,
table#splitsSortSheetWeighedTable .CodeCol, table#splitsSortSheetCountedTable .CodeCol,
table#splitsSortSheetWeighedTable .ManufacturerCol, table#splitsSortSheetCountedTable .ManufacturerCol,
table#finalOrderTable .PriceCol, table#finalOrderTable .TotalCol {
    display: none;
}
/* but show category columns in search results, since they were there before */
table.searchResultsTable .CategoryCol, table.searchResultsTable .SubCategoryCol {
    display: table-cell;
}
/* invoice table styles */
table.invoiceUserReceipts, table.invoiceUserTable {
    width: 100%;
}
table.invoiceUserReceipts .DescriptionCol {
    text-align: left;
}
table.invoiceUserTable .QtyCol, table.invoiceUserTable .OrderPriceCol,
table.invoiceUserTable .PricePerWeightCol, table.invoiceUserTable .WeightCol, 
table.invoiceUserTable .ActualPriceCol, table.invoiceUserTable .ActualUnitPriceCol,
table.invoiceUserTable .TaxCol, table.invoiceUserTable .TotalCol,
table.invoiceUserReceipts .SplitCol, table.invoiceUserReceipts .PriceCol,
table.invoiceUserReceipts .QtyCol, table.invoiceUserReceipts .TotalCol,
table#invoiceProcessingTable .SeparateActionCol, table#invoiceProcessingTable .ActualPriceCol, table#invoiceProcessingTable .ExpectedPriceCol,
table#invoiceProcessingTable .PercentChangeCol, table#invoiceProcessingTable .CodeCol {
    text-align: right;
}
table#invoiceProcessingTable th, table#invoiceProcessingTable td, table.invoiceUserReceipts .SplitCol {
    white-space: nowrap;
}

/* all body styles and common page elements */
body.printerFriendly {
    color: #000000;
}
body.techSupportUser {
    background-color: #cccccc;
}
div#printerFriendlyLinks {
    font-size: 0.75em;
}
div.switchAccountPopup, div#splitsSortUsersPopup, div#splitsSortItemsPopup, div#filterBySourcePopup, div#sortInvoiceItemsByPopup {
    text-align: right;
}

