/**********************************
 * GENERAL
 **********************************/
body {
  font-family: Arial, Tahoma, Verdana;
	font-size: 12px;
	background-color: #f3f9ff;
	margin: 0;
	padding: 0;
}

#map_canvas img {
  max-width: none !important;
}

.clear_both {
  clear: both;
  height: 0;
  line-height: 0;
  font-size: 0;
  overflow: hidden;
}

a {
  color: #375b91;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

table {
  border-collapse: collapse;
}

td {
  vertical-align: middle;
}

a img {
  border: 0 none;
}

input.text, input.submit, .submit {
  border: 1px solid #d9e6f0;
  background-color: #ffffff;
  background-image: url('../images/form-input.gif');
  background-position: left top;
  background-repeat: repeat-x;
}

input.submit, .submit {
  color: #375b91;
  font-weight: bold;
  margin: 0;
  padding: 2px 15px 2px 15px;
}

input.submit:hover, .submit:hover {
  background-position: left center;
  color: #000000;
}

input.text {
  padding: 2px;
  width: 210px;
}

select {
  border: 1px solid #d9e6f0;
  background-color: #ffffff;
  background-image: url('../images/form-input.gif');
  background-position: left top;
  background-repeat: repeat-x;
  width: 217px;
}

select.multi_row_select {
  border: 1px solid #d9e6f0;
  background-color: #ffffff;
  background-image: url('../images/form-input.gif');
  background-position: left bottom;
  background-repeat: repeat-x;
  margin: 3px 0 3px 0;
}

.info_message, .error_message, .exception_message {
  border: 1px #d9e6f0 solid;
  background-color: #ffffff;
  margin-top: 10px;
  margin-bottom: 10px;
  text-align: center;
  padding: 10px;
  font-style: italic;
  color: #993400;
}

.info_message {
  color: #294145;
}

.no_wrap {
  white-space: nowrap;
}

div.mandatory {
  font-style: italic;
  margin-bottom: 10px;
  text-align: right;
}

textarea {
  width: 300px;
  border: 1px solid #d9e6f0;
  background-color: #ffffff;
  background-image: url('../images/form-input.gif');
  background-position: left bottom;
  background-repeat: repeat-x;
  margin: 3px 0 3px 0;
}

hr {
  border: 0 none;
  border-bottom: 1px #d9e6f0 solid;
}

/**********************************
 * LOGIN PAGE
 **********************************/
#login_page {
  width: 420px;
  position: relative;
  left: 50%;
  margin-left: -211px;
  margin-top: 100px;
  padding: 10px;
  background-color: #ffffff;
}

#login_page h1 {
  text-align: center;
  margin: 0;
  margin-bottom: 10px;
  padding: 10px;
  background-color: #375a90;
  color: #ffffff;
  font-size: 16px;
  font-weight: bold;
  border: 1px solid #d9e6f0;
}

#login_page .info_message, #login_page .error_message {
  margin-bottom: 0;
}

#login {
  border: 1px #d9e6f0 solid;
  padding: 10px;
  margin-top: 10px;
}

#login form {
  margin: 0;
  padding: 0;
}

#login table {
  margin: auto;
}

#login td.title {
  text-align: right;
  padding-right: 10px;
}

#login input.text {
  width: 160px;
}

#login input.submit {
  margin-top: 5px;
}

/**********************************
 * LAYOUTS
 **********************************/
#header, #top_menu, #content_wrapper, #footer {
  width: 900px;
  position: relative;
  left: 50%;
  margin-left: -451px;
}

/**********************************
 * HEADER
 **********************************/
#header_wrapper {
  background-color: #375a90;
  color: #ffffff;
}

#header_wrapper a {
  color: #ffffff;
  text-decoration: none;
}

#header_wrapper a:hover {
  text-decoration: none;
}

#header h2 {
  margin-top: 10px;
  float: left;
}

#header div.logged_in {
  padding-top: 10px;
  float: right;
  text-align: right;
}

#header a.logoff {
  display: block;
  float: right;
  height: 16px;
  margin-top: 5px;
  padding-left: 20px;
  font-weight: bold;
  background-color: transparent;
  background-image: url('../images/icons/logout.png');
  background-position: left top;
  background-repeat: no-repeat;
}

/**********************************
 * MENU
 **********************************/
#top_menu ul {
  margin: 0;
  padding: 0;
  padding-top: 5px;
  list-style-type: none;
}

#top_menu li {
  display: block;
  float: left;
  margin-right: 3px;
  background-color: #7e9dcc;
  border: 1px #7e9dcc solid;
}

#top_menu li a {
  display: block;
  padding: 5px 12px 5px 12px;
}

#top_menu li.active {
  background-color: #f3f9ff;
  border: 1px #ffffff solid;
}

#top_menu li.active, #top_menu li.active a {
  font-weight: bold;
  color: #375a90;
}

/**********************************
 * CONTENT
 **********************************/
#content_wrapper div.navigation {
  background-color: #ffffff;
  padding: 8px;
}

#content_wrapper div.navigation a, #content_wrapper a.download_document,
#manage_order_table .add_product{
  display: inline-block;
  min-height: 16px;
  padding-left: 20px;
  background-position: left 50%;
  background-repeat: no-repeat;
  margin-right: 30px;
}

#content_wrapper div.navigation a.customers { background-image: url('../images/icons/customers.png'); }
#content_wrapper div.navigation a.add_customer { background-image: url('../images/icons/customer-add.png'); }
#content_wrapper div.navigation a.edit_customer { background-image: url('../images/icons/customer-edit.png'); }
#content_wrapper div.navigation a.documents { background-image: url('../images/icons/documents.png'); }
#content_wrapper div.navigation a.add_document { background-image: url('../images/icons/document-add.png'); }
#content_wrapper a.download_document { background-image: url('../images/icons/document-download.png'); }
#content_wrapper div.navigation a.products { background-image: url('../images/icons/products.png'); }
#content_wrapper div.navigation a.add_product,
#manage_order_table .add_product{ background-image: url('../images/icons/product-add.png'); }
#content_wrapper div.navigation a.users { background-image: url('../images/icons/users.png'); }
#content_wrapper div.navigation a.add_user { background-image: url('../images/icons/user-add.png'); }
#content_wrapper div.navigation a.edit_user { background-image: url('../images/icons/user-edit.png'); }
#content_wrapper div.navigation a.user_change_password { background-image: url('../images/icons/user-change-password.png'); }
#content_wrapper div.navigation a.customer_card { background-image: url('../images/icons/customer-card.png'); }
#content_wrapper div.navigation a.add_order { background-image: url('../images/icons/order-add.png'); }
#content_wrapper div.navigation a.revisions { background-image: url('../images/icons/revisions.png'); }
#content_wrapper div.navigation a.add_revision { background-image: url('../images/icons/revision-add.png'); }
#content_wrapper div.navigation a.services { background-image: url('../images/icons/services.png'); }
#content_wrapper div.navigation a.add_service { background-image: url('../images/icons/service-add.png'); }
#content_wrapper div.navigation a.map { background-image: url('../images/icons/google-maps.png'); }
#content_wrapper div.navigation a.index { background-image: url('../images/icons/index.png'); }

#content_wrapper div.navigation a.map {
  float: right;
  margin: 0;
  margin-left: 30px;
  padding: 0;
  padding-right: 20px;
  background-position: right 50%;
}

#content_wrapper div.navigation form.planned_revisions_filter {
  display: inline-block;
  padding: 0;
  margin: 0;
  position: relative;
}

#content_wrapper div.navigation form.planned_revisions_filter input.text {
  padding: 0 3px 0 3px;
  margin: 0;
  width: 60px;
  height: 15px;
  font-size: 10px;
}

#content_wrapper div.navigation form.planned_revisions_filter img.tcalIcon {
  position: relative;
  top: -1px;
}

#content_wrapper div.navigation form.planned_revisions_filter div.select_location {
  display: inline-block;
  padding-right: 25px;
}

#content_wrapper div.navigation form.planned_revisions_filter select {
  margin: 0;
  height: 17px;
  font-size: 10px;
}

#content_wrapper div.navigation option.state {
  background-color: #7e9dcc;
  color: #000000;
}

#content_wrapper div.navigation option.region {
  background-color: #bccde5;
  color: #000000;
}

#content_wrapper div.navigation form.planned_revisions_filter div.inputs {
  display: inline-block;
  margin-right: 15px;
}

#content_wrapper div.navigation form.planned_revisions_filter input.img_submit {
  position: absolute;
  right: 0;
}

#content_wrapper div.navigation form.customer_filter {
  float: left;
}

#content_wrapper div.navigation form.customer_filter select {
  margin: 0;
  height: 17px;
  font-size: 10px;
  width: auto;
}

#content_wrapper div.navigation form.customer_filter select#product_select {
  margin-right: 10px;
}

#content_wrapper div.navigation form.customer_filter input.img_submit {
  position: relative;
  top: 4px;
  margin-left: 5px;
}

#content_wrapper div.navigation div.customer_filter_wrapper {
  margin-top: 5px;
}

#content_wrapper div.navigation div.customer_filter_wrapper a.map {
  position: relative;
  top: 4px;
}

#content {
  background-color: #ffffff;
  margin-top: 10px;
  padding: 10px;
  min-height: 300px;
  _height: 300px;
}

#content h1 {
  margin: 0;
  padding: 0;
  padding: 5px;
  font-size: 14px;
  color: #375b91;
  border: 1px #d9e6f0 solid;
  background-color: #f3f9ff;
}

#content h2 {
  margin: 0;
  margin-bottom: 10px;
  padding: 0;
  font-size: 13px;
  color: #375b91;
}

#content #list, #content #manage_form, #content #rearrangement_form, #content #card {
  padding: 5px;
  border: 1px #d9e6f0 solid;
  border-top: 0 none;
  min-height: 200px;
  _height: 200px;
}

#content #documents_list {
  padding: 5px;
  border: 1px #d9e6f0 solid;
}

#list table, #documents_list table {
  border: 1px #d9e6f0 solid;
  width: 100%;
}

#documents {
  float: right;
  width: 350px;
  font-size: 10px;
}

#documents h2 {
  font-size: 11px;
  margin-bottom: 3px;
}

#list th, #list td, #documents_list th, #documents_list td {
  border: 1px #d9e6f0 solid;
  padding: 2px 10px 2px 10px;
}

#documents_list th, #documents_list td {
  font-size: 10px;
}

#list th, #documents_list th {
  text-align: left;
  background-color: #f3f9ff;
}

#list th a, #list th a:hover {
  text-decoration: none;
}

#list th.icon, #list td.icon, #documents_list th.icon, #documents_list td.icon {
  padding: 0;
  text-align: center;
  width: 20px;
  border-right: 0 none;
  border-left: 0 none;
}

#list input.filter_input {
  margin: 0;
  padding: 0;
  font-size: 10px;
  height: 14px;
  width: 100%;
}

#content #manage_form {
  padding-left: 50px;
  padding-right: 50px;
}

#manage_form th {
  font-weight: normal;
  padding: 5px;
  padding-right: 15px;
  text-align: right;
}

#manage_form input.submit {
  margin-top: 5px;
  text-align: center;
  width: 150px;
}

#manage_form #manage_customer_table tr.delivery_address table, #manage_form #manage_customer_table tr.billing_address table,
#manage_form #manage_customer_table tr.revision table{
  margin: auto;
}

#manage_form #manage_customer_table tr.delivery_address_label td, #manage_form #manage_customer_table tr.billing_address_label td,
#manage_form #manage_product_table tr.revision_label td,#manage_form .group_form tr.label td{
  padding: 5px;
  padding-top: 10px;
  border: 1px #d9e6f0 solid;
  border-bottom: 0 none;
  font-weight: bold;
  text-align: center;
}

#manage_form #manage_customer_table tr.delivery_address td.address, #manage_form #manage_customer_table tr.billing_address td.address,
#manage_form #manage_product_table tr.revision td.revision_data,#manage_form .group_form tr.input > td{
  padding: 5px;
  padding-bottom: 10px;
  border: 1px #d9e6f0 solid;
  border-top: 0 none;
}

#manage_form #manage_customer_table tr.delivery_address input, #manage_form #manage_customer_table tr.billing_address input,
#manage_form #manage_product_table tr.revision input{
  width: 175px;
}

#manage_form #manage_customer_table tr.delivery_address select, #manage_form #manage_customer_table tr.billing_address select,
#manage_form #manage_product_table tr.revision input{
  width: 182px;
}

#billing_address_label, #billing_address {
  display: none;
}

#another_billing_address_confirm span {
  position: relative;
  top: -2px;
}

#manage_customer_table option.state {
  background-color: #7e9dcc;
  color: #000000;
}

#manage_customer_table option.region {
  background-color: #bccde5;
  color: #000000;
}

#customers span.billing_address {
  color: #666666;
  font-size: 11px;
}

#card #contact_documents, #card #orders {
  border: 1px #d9e6f0 solid;
  padding: 5px;
}

#card #contact_documents {
  margin-bottom: 10px;
}

#content #card div.navigation {
  padding: 0;
  float: right;
}

#card #contact_documents div.navigation {
  float: left;
  margin-left: 50px;
}

#card #contact_documents #documents div.navigation {
  padding: 0;
  float: right;
  margin-left: 0;
}

#content #card div.navigation a {
  margin: 0;
  padding-left: 0;
  padding-right: 20px;
  background-position: right 50%;
  margin-left: 10px;
}

#card #contact_documents div.navigation a {
  margin: 0;
  padding-left: 20px;
  padding-right: 0;
  background-position: left 50%;
}

#card #contact_documents #documents div.navigation a {
  margin: 0;
  padding-left: 0;
  padding-right: 20px;
  background-position: right 50%;
  margin-left: 10px;
  padding-top: 3px;
}

#card h2 {
  float: left;
}

#card #contact {
  float: left;
  width: 450px;
}

#card #contact th, #card #contact td {
  font-size: 11px;
}

#card #contact th {
  text-align: right;
  padding-right: 10px;
}

#card #order_list div.order {
  margin-bottom: 10px;
}

#card #order_list div.last {
  margin-bottom: 0;
}

#order_list div.order div.heading {
  float: left;
  font-weight: bold;
  width: 200px;
  text-align: center;
  background-color: #375b91;
  margin-right: 25px;
  padding: 5px;
  position: relative;
}

#order_list div.order div.subheading {
  float: left;
  font-weight: bold;
}

#order_list div.order div.heading a {
  text-decoration: underline;
  color: #ffffff;
}

#order_list div.order div.heading a:hover {
  text-decoration: none;
}

#order_list a.delete_order img {
  position: absolute;
  right: 3px;
  top: 5px;
}

#order_list div.order div.do_revision {
  float: left;
  width: 150px;
  margin-right: 25px;
  padding: 5px;
  background-color: #cccccc;
  text-align: center;
}

#order_list div.revisions div.subheading,
#order_list div.services div.subheading,
#order_list div.documents div.subheading {
  float: left;
  text-decoration: none;
  margin-right: 25px;
  margin-bottom: 2px;
}

#card #order_list div.revisions div.navigation,
#card #order_list div.services div.navigation,
#card #order_list div.documents div.navigation {
  float: left;
  margin-bottom: 2px;
}

#card #order_list div.revisions div.navigation a,
#card #order_list div.services div.navigation a,
#card #order_list div.documents div.navigation a {
  margin: 0;
  padding: 0;
  background-position: left 50%;
  width: 16px;
}

#order_list div.revisions table.revisions_table,
#order_list div.services table.services_table,
#order_list div.documents table.documents_table {
  border: 1px #acc3e5 solid;
  background-color: #ffffff;
}

#order_list div.revisions table.revisions_table {
  width: 350px;
}

#order_list div.services table.services_table {
  width: 250px;
}


#order_list div.documents table.documents_table {
  width: 214px;
}

#order_list div.revisions td, #order_list div.revisions th,
#order_list div.services td, #order_list div.services th,
#order_list div.documents td, #order_list div.documents th {
  border: 1px #a8b9d1 solid;
  padding: 3px;
  font-weight: normal;
  font-size: 11px;
  text-align: left;
}

#order_list div.revisions th, #order_list div.services th, #order_list div.documents th {
  background-color: #c8d2e2;
}

#order_list div.revisions td.icon, #order_list div.revisions th.icon,
#order_list div.services td.icon, #order_list div.services th.icon,
#order_list div.documents td.icon, #order_list div.documents th.icon {
  width: 20px;
  border-left: 0 none;
  border-right: 0 none;
}

#order_list div.tables div.revisions, #order_list div.tables div.services, #order_list div.tables div.documents {
  float: left;
  margin-right: 10px;
}

#order_list div.tables div.documents {
  margin: 0;
}

#order_list div.tables_wrapper {
  border: 1px #a8b9d1 solid;
  padding: 20px 10px 20px 10px;
  margin: 0;
}

#order_list div.note {
  margin-top: 10px;
}

#order_list div.note div.subheading {
  float: none;
  margin-bottom: 2px;
}

#order_list div.note div.text {
  border: 1px #a8b9d1 solid;
  width: 822px;
  background-color: #ffffff;
  padding: 5px;
}

#list #expired_revisions {
  margin-bottom: 20px;
}

#expired_revisions th, #expired_revisions td, #list h2.expired {
  color: #a43708;
}

#expired_revisions th {
  background-color: #f7f6f0;
}

#expired_revisions, #expired_revisions td, #expired_revisions th {
  border: 1px #e8e7e1 solid;
}

select#product_select option.heading {
  background-color: #bccde5;
  color: #000000;
}

/** PAGING **/
.paging {
  margin-top: 5px;
  padding: 5px;
  border: 1px #d9e6f0 solid;
}

.paging div.paging_navigation {
  font-weight: bold;
  float: right;
}

.paging div.paging_navigation a {
  color: #264a80;
}

.paging div.paging_navigation a.page, .paging div.paging_navigation span.page {
  display: block;
  float: left;
  width: 24px;
  height: 24px;
  margin: 3px;
  background-color: transparent;
  background-image: url('../images/icons/paging-navigation.png');
  background-position: left top;
  background-repeat: no-repeat;
}

.paging div.paging_navigation span.dots_before_actual_page, .paging div.paging_navigation span.dots_after_actual_page {
  display: block;
  float: left;
  height: 24px;
}

.paging div.paging_navigation span.actual_page {
  background-image: url('../images/icons/paging-current.png');
}

.paging div.paging_navigation span.first_page_unactive, .paging div.paging_navigation span.prev_page_unactive,
.paging div.paging_navigation span.next_page_unactive, .paging div.paging_navigation span.last_page_unactive {
  background-image: url('../images/icons/paging-unactive.png');
}

.paging div.paging_navigation a.page span, .paging div.paging_navigation span.page span,
.paging div.paging_navigation span.dots_before_actual_page span, .paging div.paging_navigation span.dots_after_actual_page span {
  display: block;
  text-align: center;
  padding-top: 4px;
}

.paging div.paging_goto {
  float: left;
  position: relative;
  top: 2px;
}

.paging div.paging_goto input.goto_page {
  border: 1px solid #d9e6f0;
  background-color: #ffffff;
  background-image: url('../images/form-input.gif');
  background-position: left top;
  background-repeat: repeat-x;
  padding: 2px;
  width: 30px;
  text-align: center;
  margin-left: 5px;
  margin-right: 5px;
}

/**********************************
 * FOOTER
 **********************************/
#footer {
  background-color: #ffffff;
  margin-top: 10px;
}

#footer div {
  padding: 5px;
}

#footer a {
  text-decoration: none;
}

#footer a:hover {
  text-decoration: none;
}