* {
  margin: 0;
  padding: 0;
}

html, body { height: 100%; }

body {
  background-color: #f7f7f7;
  box-sizing: border-box;
  font: 400 13px 'Open Sans', sans-serif;
  position: relative;
}

/* ==========================================================================
   General
   ========================================================================== */

h1 {
  font-size: 24px;
  font-weight: 400;
  line-height: 1em;
  margin-bottom: 20px;
}

h2 {
  color: #73879C;
  font-size: 24px;
  font-weight: 400;
  line-height: 1em;
  margin-bottom: 20px;
}

h3 {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 20px;
}

h4 {
  font-size: 14px;
  font-weight: 600;
  margin: 20px 0 10px;
}

img { vertical-align: middle; }

b,
strong { font-weight: 600; }

iframe { border: none; }

.button,
.add-row a {
  background-color: #4c96e0;
  border: none;
  color: #fff !important;
  cursor: pointer;
  display: inline-block;
  font: 13px 'Open Sans', sans-serif;
  line-height: 18px;
  padding: 4px 8px;
  text-decoration: none !important;
  transition: 300ms;
  vertical-align: middle;
}

.button:hover,
.add-row a:hover { background-color: #3a80c7; }

.button.grey { background-color: #7a7c80; }

.button.grey:hover { background-color: #515356; }

.button.red { background-color: red; }

.scroll-wrapper {
  max-height: 600px;
  overflow: auto;
}

.errorlist,
.errornote { color: red; }

.help-text {
  font-style: italic;
  margin: 10px 0;
}

.help { font-style: italic; }

.is-countdown { height: 24px !important; }

.is-countdown .countdown-amount { font-size: 18px; }

.go-link {
    background-color: #4c96e0;
    color: #fff !important;
    display: inline-block;
    padding: 4px 8px;
    text-decoration: none !important;
    transition: 300ms;
}

.text-button {
  background-color: transparent;
  border: none;
  color: #2a3f54 !important;
  cursor: pointer;
  display: inline-block;
  font: 13px 'Open Sans', sans-serif;
  line-height: 18px;
  padding: 0;
  text-decoration: none !important;
  vertical-align: middle;
}

/* Form Inputs
   ========================================================================== */

input,
select { vertical-align: middle; }

input[type="search"],
input[type="text"],
input[type="number"],
input[type="password"],
input[type="email"],
input[type="date"],
input[type="time"],
textarea {
  border: 1px solid #d9dee4;
  border-radius: 0;
  font: 400 13px 'Open Sans', sans-serif;
  padding: 3px 6px;
}

input[type="submit"]:not(.title) {
  background-color: #4c96e0;
  border: none;
  color: #fff;
  cursor: pointer;
  font: 400 13px 'Open Sans', sans-serif;
  padding: 4px 8px;
  transition: 300ms;
}

input[type="submit"]:not(.title):hover { background-color: #3a80c7; }

input[type="file"] { font: 400 13px "Open Sans", sans-serif; }

select {
  border: 1px solid #d9dee4;
  border-radius: 0;
  color: #5a738e;
  font: 400 13px 'Open Sans', sans-serif;
  padding: 2px 6px;
  vertical-align: top;
  width: 120px;
}

select[multiple="multiple"] { min-width: 240px; }

label { vertical-align: middle; }

.go-to-year { margin-bottom: 20px; }

.vDateField,
.vTimeField { width: 84px; }

.vLargeTextField {
  height: 150px;
  width: 500px;
}

table .vLargeTextField {
  height: 100px;
  width: 300px;
}

.select2-container--default .select2-selection--single {
  border: 1px solid #d9dee4 !important;
  border-radius: 0 !important;
}

/* Tables
   ========================================================================== */

table {
  background-color: #fff;
  border-top: 1px solid #ddd;
  border-spacing: 0;
  width: 100%;
}

td,
th {
  border-bottom: 1px solid #ddd;
  padding: 8px 4px;
  text-align: left;
}

tr:nth-child(even) { background-color: #f9f9f9; }

tr.selected { background-color: #d9ece8; }

th {
  background-color: #ededed;
  color: #2a3f54;
  font-weight: 600;
}

thead th { text-transform: capitalize; }

.result-list tbody th {
  background-color: transparent;
  font-weight: 400;
}

tr.add-row { background-color: transparent; }

.add-row td {
  border-bottom: none;
  padding: 20px 0 0;
}

div.add-row { padding-top: 20px; }

tr:not(.has_original) td.original { padding: 0; }

/* Lists
   ========================================================================== */

li { list-style: none; }

.list-group li {
  border-top: 1px solid #e6e9ed;
  list-style: none;
  padding: 10px 0;
}

.list-striped li {
  border-top: 1px solid #ddd;
  padding: 8px 4px;
}

.list-striped li:nth-child(even) { background-color: #f9f9f9; }

.list-related li {
  align-items: center;
  display: grid;
  gap: 15px;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  grid-template-columns: 1fr;
  margin-top: 10px;
}

.list-related li:first-child { margin-top: 0; }

.list-related .material-icons {
  font-size: 16px;
  height: 19px;
  margin-right: 3px;
  vertical-align: middle;
}

.list-related select { width: 183px !important; }

.list-related input[type="number"] { width: 169px; }

ul.btn-group-vertical {
  background-color: #fff;
  border: 1px solid #d9dee4;
}

ul.btn-group-vertical a {
  border-top: 1px solid #d9dee4;
  display: block;
  padding: 10px 20px;
}

ul.btn-group-vertical li:first-child a { border-top: none; }

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

.btn-danger { background-color: #fff; }

.content-related > ul.btn-group-vertical:first-child { margin-top: 70px; }

/* Charts
   ========================================================================== */

.chart { text-align: center; }

.donut-chart { position: relative; }

.donut-chart .chart-display { height: 260px; }

.donut-chart .label-overlay {
  color: #5a738e;
  font-size: 32px;
  line-height: 60px;
  margin: -30px 0 0 -30px;
  position: absolute;
    left: 50%;
    top: 50%;
  vertical-align: middle;
  width: 60px;
}

.donut-chart .label-overlay.smaller { font-size: 24px; }

.bar-chart .chart-display { height: 480px; }

.legend { white-space: nowrap; }

.legend li {
  list-style: none;
  margin-bottom: 10px;
}

.legend .box {
  display: inline-block;
  height: 19px;
  margin-right: 10px;
  width: 30px;
  vertical-align: middle;
}

/* Pagination
   ========================================================================== */

.paginator,
.pagination ul {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  gap: 10px;
  list-style: none;
}

.pagination-footer {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  gap: 20px;
  justify-content: space-between;
  margin-top: 20px;
}

.pagination-footer .paginator { margin-top: 0; }

/* Rows Per Page
   ========================================================================== */

.rows_per_page {
  border: 1px solid #d9dee4;
  color: #fff;
  display: inline-block;
  font-size: 13px;
  position: relative;
}

.rows_per_page_select label { margin-right: 1px; }

.rows_per_page-content {
  background-color: #fff;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  display: none;
  padding: 5px;
  position: absolute;
    top: 100%;
    right: 0;
    left: 0;
  z-index: 1;
}

.rows_per_page-content a {
  color: #000;
  display: flex;
  font: 400 13px 'Open Sans', sans-serif;
  justify-content: flex-start;
  padding: 5px 0px 0px 5px;
  width: 120.2px;
}

.rows_per_page_btn {
  background-color: transparent;
  border-color: transparent;
  font: 400 13px 'Open Sans', sans-serif;
  height: 18px;
  padding: 0 2px;
  text-align: left;
  width: 120px;
}

.rows_per_page_btn_background {
  background: #fff url('/static/img/drop_down_bckgrnd.png') center no-repeat;
  height: 22px;
  padding: 2px 5px;
}

.rows_per_page-content a:hover { background-color: #ddd; }

/* ==========================================================================
   Page Layout
   ========================================================================== */

#container {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto 1fr;
  min-height: 100%;
}

#content {
  color: #5a738e;
  display: grid;
  gap: 20px;
  grid-template-columns: auto;
  grid-auto-flow: row;
  grid-auto-rows: max-content;
  margin: 20px;
}

#content.colMS { grid-template-columns: 1fr 390px; }

#content-main,
#content-related {
  display: grid;
  gap: 20px;
  grid-auto-flow: row;
  grid-auto-rows: max-content;
}

#content-related h2 { font-size: 20px; }

header {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  grid-column: 1 / -1;
}

header > :last-child { margin-bottom: 0; }

#content a {
  color: #2a3f54;
  text-decoration: none;
}

#content a:hover { text-decoration: underline; }

.section,
fieldset,
.extras {
  background-color: #fff;
  border: none;
  box-shadow: 0 0 10px rgba(0,0,0,0.03);
  padding: 20px;
}

fieldset { margin: 20px 0; }

fieldset:first-child { margin-top: 0; }

.section-footer {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  justify-items: start;
  margin-top: 20px;
}

.section-footer .total { font-size: 18px; }

.submit-buttons {
  display: flex;
  flex-flow: row wrap;
  gap: 10px;
  margin-top: 20px;
}

.submit-buttons.vertical {
  align-items: start;
  flex-flow: column nowrap;
}

ul.messagelist {
  font-style: italic;
  margin: 20px 20px 0;
}

/* ==========================================================================
   Main Navigation
   ========================================================================== */

#main-nav {
  background-color: #15283b;
  color: #fff;
  grid-row: 1 / span 3;
}

#branding {
  margin-bottom: 30px;
  padding: 20px;
}

.logo img { max-width: 190px; }

.main-menu { list-style: none; }

.main-menu li {
  border-right: 5px solid transparent;
  position: relative;
  transition: 300ms;
}

.main-menu a {
  color: #e7e7e7;
  display: block;
  font-size: 14px;
  line-height: 22px;
  margin-bottom: 5px;
  padding: 11px 15px;
  text-decoration: none;
  transition: 300ms;
}

.main-menu li:hover { border-color: #4c96e0; }

.main-menu a:hover {
  background-color: #213345;
  color: #fff;
}

.main-menu .material-icons {
  color: #e7e7e7;
  height: 22px;
  margin-right: 15px;
  vertical-align: top;
}

/* ==========================================================================
   Top Navigation
   ========================================================================== */

#top-nav {
  align-items: center;
  background-color: #ededed;
  border-bottom: 1px solid #d9dee4;
  color: #515356;
  display: grid;
  gap: 40px;
  grid-template-columns: 1fr repeat(2, auto);
  padding: 12px 15px;
}

#top-nav span { font-weight: 600; }

.breadcrumbs,
.user-links {
  align-items: center;
  color: #515356;
  display: grid;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  list-style: none;
}

.breadcrumbs { gap: 5px; }

.user-links { gap: 20px; }

.breadcrumbs a,
.user-links a {
  color: #2a3f54;
  font-weight: 600;
  text-decoration: none;
  transition: 300ms;
}

.breadcrumbs a:hover,
.user-links a:hover { color: #4c96e0; }

.user-links li.search { margin-left: 20px; }

.user-links a { cursor: pointer; }

.search-container {
	display: inline-block !important;
	height: 26px;
  position: relative;
	width: 30px;
}

.search-button {
  padding: 4px 6px;
	position: absolute;
}

.search-button .material-icons {
  font-size: 18px;
  vertical-align: top;
}

.search {
  outline: none;
	position: absolute;
	  left: 28px;
	padding: 0 !important;
	width: 0;
	height: 100%;
	transition-duration: 0.4s;
	-moz-transition-duration: 0.4s;
	-webkit-transition-duration: 0.4s;
	-o-transition-duration: 0.4s;
}

.search:focus {
	width: 251px;
	padding: 3px 6px !important;
}

.expandright {
	left: auto;
	right: 29px; /* Button width-1px */
}

.expandright:focus { padding: 0 0 0 16px; }

/* ==========================================================================
   Login
   ========================================================================== */

body.login #container {
  display: block;
  height: 100%;
}

body.login #content {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 100%;
}

body.login #content-main {
  grid-auto-flow: unset;
  grid-auto-rows: unset;
  margin-top: -10vh;
}

body.login #main-nav,
body.login #top-nav { display: none; }

body.login .section { padding: 40px; }

body.login .submit-row { justify-content: start; }

body.login .form-row,
body.login .submit-row { margin-top: 20px; justify-content: center;}

body.login input[type="text"],
body.login input[type="password"] { width: 246px; }

body.login .branding {
  margin: -40px -40px 40px -40px;
  padding: 30px;
  text-align: center;
}

body.login .logo img { max-width: 240px; }

body.login .form-row .field-box { grid-template-columns: 100px max-content; }

body.login .form-row .field-box label{ margin: 4px 30px 4px 0px;}

/* ==========================================================================
   Homepage
   ========================================================================== */

.homepage {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: auto 1fr;
  grid-auto-rows: auto;
}

.homepage .quick-stats { grid-column: auto / span 9; }

.homepage .projects { grid-column: auto / span 9; }

.homepage .notices {
  grid-column: auto / span 3;
  grid-row: auto / span 2;
}

.homepage .notices .scroll-wrapper { max-height: 696px; }

.homepage .notices .list-group-item:first-child {
  border-top: 0;
  padding-top: 0;
}

.homepage .notices .list-group-item:last-child { padding-bottom: 0; }

.homepage .services,
.homepage .repairs { grid-column: auto / span 3; }

.homepage .equipment { grid-column: auto / span 6; }

.homepage .equipment .map { height: calc(100% - 44px); }

.homepage .safety { grid-column: auto / span 12; }

.homepage .safety .quick-stats {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  margin-bottom: 20px;
  padding: 20px;
}

.homepage .human-resources,
.homepage .payroll,
.homepage .holidays { grid-column: auto / span 4; }

/* ==========================================================================
   Quick Stats
   ========================================================================== */

.quick-stats {
  display: grid;
  gap: 20px;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
}

.quick-stats .number {
  font-size: 40px;
  font-weight: 500;
  line-height: 40px;
  margin-bottom: 5px;
}

.quick-stats .title {
  font-size: 14px;
  font-weight: 500;
}

.quick-stats .sub-title { font-style: italic; }

/* ==========================================================================
   Changelist Form Options
   ========================================================================== */

.object-tools {
  display: flex;
  gap: 10px;
  flex-flow: row wrap;
  list-style: none;
}

.object-tools:not(.object-tools:has(li)) { display: none; }

.object-tools a {
  background-color: #4c96e0;
  color: #fff !important;
  display: inline-block;
  padding: 4px 8px;
  text-decoration: none !important;
  transition: 300ms;
}

.object-tools a:hover { background-color: #3a80c7 !important; }

.submit-row {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  gap: 10px;
  justify-content: end;
}

.deletelink {
  background-color: red;
  color: #fff !important;
  display: inline-block;
  font: 13px 'Open Sans', sans-serif;
  line-height: 18px;
  padding: 4px 8px;
  text-decoration: none !important;
  transition: 300ms;
}

.result-count { margin-left: 10px; }

.xfull,
#toolbar { display: none; }

.controls {
  align-items: center;
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, auto) 1fr;
  margin-bottom: 10px;
}

#changelist-filter + .controls,
#changelist-filter + div + .controls { margin-right: 144px; }

.module:not(.filtered) .controls { margin-top: 0; }

.actions,
.rows_per_page_select,
.functions {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  gap: 4px;
}

.functions { justify-self: end; }

.action-counter,
.all,
.question,
.clear { margin-left: 10px; }

.toggle-filter {
  background-color: #4c96e0;
  color: #fff !important;
  display: inline-block;
  padding: 5px 8px;
  position: absolute;
    top: -1px;
    right: -1px;
  white-space: nowrap;
  width: 108px;
}

#bar {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  gap: 20px;
}

.object-tools + #bar { margin: 46px 0 -27px; }

#toolbar {
  margin-bottom: 20px;
  text-align: right;
}

.toolbar { position: relative; }

.year {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
}

.year label { margin-right: 5px; }

#changelist-filter + #changelist-form .controls { margin-right: 134px; }

#search-bar { text-align: right; }

.result-list .sortpriority{
    display: none
}
/* ==========================================================================
   Fieldset Pages
   ========================================================================== */

fieldset.collapsed * { display: none; }

fieldset.collapsed,
fieldset.collapsed h2 { display: block !important; }

fieldset.collapsed h2,
fieldset h2:last-child { margin-bottom: 0; }

fieldset.collapsed .collapse-toggle {
  background: transparent;
  display: inline !important;
}

.form-row,
.form-list li { margin-top: 10px; }

.form-row:first-child,
.form-row:first-of-type,
.form-list li:first-child { margin-top: 0; }

.form-row.extra-column {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  gap: 20px;
}

.form-row .field-box,
.form-row .control-group,
.form-list li {
  align-items: center;
  display: grid;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  grid-template-columns: 190px max-content;
  gap: 20px;
}

.form-row .field-box label {
  align-self: start;
  margin: 4px 0;
}

.form-row .field-box input[type="text"] { min-width: 246px; }

.form-row .field-box select,
.form-row .control-group select { min-width: 260px; }

.checkbox-row {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  gap: 10px;
}

.checkbox-row + .field-box { margin-top: 10px; }

.checkbox-row + .checkbox-row { margin-top: 10px; }

.checkbox-row .control-group {
  grid-template-columns: repeat(2, max-content);
  margin-left: 20px;
}

canvas {
  border: 1px solid #d9dee4;
  max-width: 400px !important;
}

.file-upload br,
.extras .note-text br {
  content: "";
  display: block;
  margin-top: 10px;
}

.clearable-file-input { margin-left: 20px; }

.clearable-file-input label { margin: 0 0 0 7px !important; }

.form-row .field-approved_time { display: block; }

#hsmainmractiondescription_set-group td,
#witnessstatementainmr_set-group td,
#po_material-group td { vertical-align: top; }

#mobiledtsextraentry_set-group {
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0,0,0,0.03);
  padding: 20px;
}

#mobiledtsextraentry_set-group fieldset {
  box-shadow: none;
  padding: 0;
}

#mobiledtsextraentry_set-group .add-row { padding-top: 0; }

span.delete { margin-left: 20px; }

.control-group textarea {
  height: 150px;
  width: 500px;
}

/* ==========================================================================
   Projects
   ========================================================================== */

.project-stats {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr) auto;
}

td.original {
  padding: 0;
  width: 0;
}

td.original p { display: none; }

/* ==========================================================================
   Shop Operations
   ========================================================================== */

.work-order-stats {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(2, 1fr);
}

/* ==========================================================================
   Operations Board
   ========================================================================== */

#head {
  background-color: #15283b;
  padding: 20px;
}

#board {
  color: #5a738e;
  padding: 20px;
}

#board a {
  color: #2a3f54;
  text-decoration: none;
}

.opsboard-table {
  display: grid;
  gap: 20px;
  grid-auto-rows: 1fr;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto;
}

.date {
  font-size: 13px;
  font-weight: 500;
  grid-column: 1 / -1;
  text-align: center;
}

.date .material-icons { vertical-align: middle; }

.opsboard-table h3 { margin-bottom: 5px; }

.opsboard-table .sub-header {
  font-size: 14px;
  font-style: italic;
  font-weight: 500;
}

.summary { margin-top: 20px; }

.summary ul {
  list-style: none;
  margin: 20px 0;
}

.summary li { margin-top: 10px; }

.summary li:first-child { margin-top: 0; }

.board-head {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  color: #fff;
  justify-content: space-between;
}

.header-title h1 {
  font-size: 32px;
  margin-bottom: 0;
}

/* ==========================================================================
   Weekly Construction Reports
   ========================================================================== */

.title-content h1 { margin-bottom: 10px; }

.title-content h2 {
  font-size: 16px;
  font-style: italic;
}

.section.report-info,
.section.day {
  margin-bottom: 20px;
  position: relative;
}

.section.day .row { margin-top: 20px; }

.overview {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 2fr;
}

.report-info dl,
.overview dl {
  display: flex;
  flex-flow: row nowrap;
  gap: 20px;
  margin-top: 10px;
}

.report-info dl:first-child,
.overview dl:first-child { margin-top: 0; }

.report-info dt,
.overview dt {
  font-weight: 600;
  min-width: 180px;
}

:not(.row).edit {
  position: absolute;
    top: 20px;
    right: 20px;
}

.wcr {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(2, max-content) 1fr;
  place-items: center end;
}

.section.create-wcr,
.section.edit-wcr,
.section.wcr-request { margin-bottom: 20px; }

.section.edit-wcr .checkbox-row { margin-top: 20px; }

.section.create-jha { margin-bottom: 20px; }

.section.create-jha textarea {
  height: 48px;
  width: 246px;
}

.hazard-section{
    padding-left: 0;
    box-shadow: 10px 0 10px rgba(0, 0, 0, 0.03);
}

/* ==========================================================================
   Events
   ========================================================================== */

.selector {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, max-content);
}

.selector h2 {
  font-size: 13px;
  margin-bottom: 5px;
}

.selector select[multiple="multiple"] {
  display: block;
  height: 150px !important;
  margin-bottom: 5px;
  width: 300px;
}

.selector .selector-filter + select[multiple="multiple"] {
  border-top: none;
  height: 113px !important;
}

.selector .selector-filter {
  border: 1px solid #d9dee4;
  border-bottom: none;
  padding: 5px;
}

.selector .selector-chooseall,
.selector .selector-clearall { font-weight: 600; }

.selector .selector-chooseall { padding: 0 18px 0 0; }

.selector .selector-clearall { padding: 0 0 0 18px; }

.selector .selector-chooseall.active { background-position: right -289px; }

.form-row .field-box + .field-box { margin-top: 10px; }

.field-incidents .help,
.field-incidents_classification .help,
.field-additional_inspections_by .help,
.field-involved .help { grid-column: 3; }

.field-personnel .help,
.field-permissions .help { grid-column: 4; }

/* ==========================================================================
   Jobs
   ========================================================================== */

.form-row .field-overview,
.form-row .field-external_links { display: block; }

.field-overview label,
.field-external_links label,
.field-overview p,
.field-external_links p,
.field-external_links br,
.field-approved_time p,
.field-approved_time label { display: none; }

.alert-countdown,
.job-progress,
.work-completed { text-align: center; }

.is-countdown {
  background-color: transparent !important;
  border: none !important;
  margin-bottom: 13px;
}

.slider {
  height: 12px;
  margin: 0 auto;
  width: 160px;
}

#content-related fieldset { margin: 0; }

.qm-documents table {
  border: none;
  margin-top: 10px;
}

.qm-documents td {
  border: none;
  padding: 0;
}

/* ==========================================================================
   Field Operations
   ========================================================================== */

.job-stats {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(4, 2fr) 1fr;
}

/* ==========================================================================
   Work Orders
   ========================================================================== */

.field-box.field-fixes p.help, .field-box.field-repair_request_m2m p.help , .field-box.field-positions p.help {
  grid-column: 4;
  max-width: 200px;
}

.total { font-weight: 700; }

/* ==========================================================================
   Equipment and Mobilization
   ========================================================================== */

.requests {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr) auto;
}

.mileage .quick-stats {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  padding: 20px;
}

.equipment-stats {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr) auto;
}

/* ==========================================================================
   Payroll
   ========================================================================== */

.employee-stats {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr) auto;
}

.payroll-breakdown {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(2, 1fr);
}

.field-employees { grid-column: 1 / span 2; }

.field-hours_table > p,
.field-hours_table > p br,
.field-hours_table > br { display: none; }

/* ==========================================================================
   Users
   ========================================================================== */

.field-box.field-groups p.help,
.field-box.field-user_permissions p.help {
  grid-column: 4;
  max-width: 200px;
}

.field-box.field-last_login p.datetime,
.field-box.field-date_joined p.datetime,
.field-box.field-date_time p.datetime,
.field-box.field-start p.datetime,
.field-box.field-end p.datetime {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, auto);
}

.field-box.field-last_login p.datetime br,
.field-box.field-date_joined p.datetime br,
.field-box.field-date_time p.datetime br,
.field-box.field-start p.datetime br,
.field-box.field-end p.datetime br { display: none; }

/* ==========================================================================
   HR
   ========================================================================== */

.hr-stats {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr) auto;
}

/* ==========================================================================
   Admin
   ========================================================================== */

/*#content-main.admin { grid-column: 1 / span 2; }*/

.admin-heading {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.admin-heading h2 { margin: 0; }

.admin-body { margin-top: 20px; }

/* ==========================================================================
   Reports
   ========================================================================== */

#content-main.report { grid-column: 1 / span 2; }

.report-row { padding: 10px; }

.report-row:nth-child(even) { background-color: #f9f9f9; }

.report .row  {
  display: grid;
  gap: 40px;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  grid-template-columns: 1fr;
  place-items: center start;
}

.report .row label { margin-right: 10px; }

.report .row input[type="submit"].title {
  background-color: transparent;
  border: none;
  cursor: pointer;
  font-family: "Open Sans", sans-serif;
}

.report .row .submit-buttons {
  justify-content: end;
  margin-top: 0;
  width: 90px;
}

/* ==========================================================================
   Job Board
   ========================================================================== */



/*h2 { text-transform: capitalize; }

  h3 {
    font-size: 18px;
    font-weight: 400;
  }

  a { transition: 300ms; }

  li {
    background: transparent !important;
    font-size: 16px !important;
  }

  .section a,
  .panel a { color: #fff; }

  .figure { font-size: 16px !important; }

  .btn {
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 10px 20px !important;
    text-transform: capitalize;
  }

  .material-icons {
    color: #fff;
    margin-right: 15px;
    vertical-align: middle;
  }

  .section {
    background-color: #192734;
    padding: 20px;
    margin: 20px 0;
  }

  .panel-heading .section {
    margin: 0;
    padding: 0;
  }

  #container .panel {
    background-color: #192734;
    border: none;
    border-radius: 0;
    box-shadow: none;
    color: #fff;
    margin-bottom: 0;
    min-height: 100%;
  }

  #container .panel-heading {
    background-color: transparent;
    background-image: none;
    color: #fff;
    font-size: 20px;
    padding: 10px 15px;
    text-transform: capitalize;
  }

  .panel-heading a {
    color: #fff;
    text-decoration: none;
  }

  #container .panel-body { padding: 15px; }

  body:not(.login) #container {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: min-content min-content;
    place-items: stretch;
    min-height: 100%;
  }

  body.login #container { background-color: #192734; }

  body.login #menu { display: none; }

  #nav-wrapper {
    background-color: #07101a;
    grid-column: 1;
    grid-row: 1 / span 4;
    padding: 20px 0;
  }

  #branding { padding: 10px 20px; }

  body:not(.login) #branding { margin-bottom: 40px; }

  body.login #branding { text-align: center; }

  body.login #header { display: none; }

  #branding img { max-width: 202px; }

  #menu ul { list-style: none; }

  #menu a {
    color: rgba(255,255,255,0.85);
    display: block;
    font-size: 16px;
    font-weight: 300;
    padding: 12px 20px;
    text-decoration: none;
  }

  #menu a:hover {
    background-color: #12212c;
    color: #fff;
  }

  #header {
    align-items: center;
    display: grid;
    gap: 0 20px;
    grid-template-columns: 1fr auto;
    grid-template-rows: min-content;
    padding: 10px 20px;
  }

  .breadcrumbs {
    grid-column: 1;
    grid-row: 1;
  }

  .breadcrumbs a { color: #c9c9c9; }

  .breadcrumbs a:hover {
    color: #fff;
    text-decoration: none;
  }

  #user-tools {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    grid-column: 2;
    grid-row: 1;
  }

  #username { margin-right: 20px; }

  #user-links {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    list-style: none;
  }

  #user-links li { margin: 0 10px; }

  #user-links a { color: #c9c9c9; }

  #user-links a:hover {
    color: #fff;
    text-decoration: none;
  }

  #user-tools input[name="q"][type="search"] { border: none; }

  #user-tools input[type="submit"] {
    border: none;
    color: #fff;
    height: auto !important;
    padding: 5px 10px !important;
  }

  body:not(.login) #content {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: min-content auto;
    padding: 0 20px;
    width: auto !important;
  }

  #content > h1 {
    color: #fff;
    font-size: 30px;
    font-weight: 400;
    grid-column: 1 / span 2;
    margin-bottom: 20px;
    text-transform: none;
  }

  body .module { width: auto !important; }

  #content-main {
    position: relative;
  }

  #content-related {
    padding-left: 20px;
    width: 360px;
  }

  #content-related .panel {
    font-size: 16px;
    margin-bottom: 20px;
  }

  .admin .module .panel { font-size: 16px; }

  #content-related .module li,
  .admin .module li {
    display: grid;
    gap: 0 10px;
    grid-template-columns: 1fr auto auto;
    margin-top: 10px;
  }

  #content-related .module li:first-child,
  .admin .module li:first-child { margin-top: 0; }

  #content-related .module:first-child li:first-child,
  .admin .module:first-child li:first-child { margin-top: 0; }

  #content-related .module a,
  .admin .module a {
    color: #fff;
    text-decoration: none;
  }

  #content-related .module .add a,
  #content-related .module .change a,
  .admin .module .add a,
  .admin .module .change a { text-decoration: underline; }

  #content-related .panel-body table td:first-child {
    white-space: nowrap;
    width: 60px;
  }

  #content-related .panel-body table tr:last-child td {
    padding-top: 20px;
    text-align: left !important;
  }

  #content-related label {
    color: #fff;
    font-size: inherit;
    text-transform: none;
  }

  #content-related .title,
  #content-main .title { text-transform: capitalize; }

  #content-related .module table th {
    text-align: left !important;
    width: auto !important;
  }

  .admin {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(4, auto);
  }

  body .admin .module {width: 98% !important;}

  .admin .panel-heading {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }

  .admin .module a.show-hide {
    color: #c9c9c9;
    font-size: 16px;
    text-decoration: underline;
  }

  select {
    background-color: #07101a !important;
    border: none !important;
    color: #fff !important;
    padding: 5px;
    width: 240px;
  }

  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="number"] {
    background-color: #07101a !important;
    border: none !important;
    caret-color: #c9c9c9 !important;
    color: #c9c9c9 !important;
    font: 16px 'Source Sans Pro', sans-serif !important;
    padding: 5px 10px;
  }

  #content-related input[type="text"],
  .report input[type="text"],
  #result_list input[type="text"] { padding: 5px; }

  #content-related .payables-report label {
    font-size: 16px !important;
    text-align: left !important;
    text-transform: none;
  }

  #content-related .payables-report tr:last-child input {
    background-color: #195c93;
    color: #fff;
  }

  #content-related li { list-style: none; }

  .payables-report a { color: #fff; }

  #content .container-fluid {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: auto 1fr repeat(3, auto);
    padding: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .container-fluid > div { overflow: hidden; }

  .quick-stats {
    display: grid;
    gap: 20px;
    grid-column: 1 / span 5;
    grid-row: 1;
    grid-template-columns: repeat(6, 1fr);
  }

  .quick-stats.col5 { grid-template-columns: repeat(5, 1fr); }

  .statistic {
    background-color: #75cfcf;
    color: #fff;
    font-size: 18px;
    font-weight: 400;
    padding: 20px;
    text-align: center;
  }

  .statistic .number {
    font-size: 48px;
    line-height: 48px;
  }

  .statistic .sub-info { font-size: 14px; }

  .statistic:nth-child(2) { background-color: #4eb4c3; }

  .statistic:nth-child(3) { background-color: #3396b5; }

  .statistic:nth-child(4) { background-color: #1a79a9; }

  .statistic:nth-child(5) { background-color: #195c93; }

  .statistic:nth-child(6) { background-color: #183f77; }

  .notices {
    grid-column: 6;
    grid-row: 1 / span 2;
  }

  .notices li {
    border-bottom: 1px solid #293b4d;
    overflow: hidden;
    padding: 15px 0;
    text-overflow: ellipsis;
  }

  .notices li:first-child { padding-top: 0; }

  .notices li:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }

  .notices .panel-body {
    max-height: 501px;
    overflow: auto;
  }

  .projects {
    grid-column: 1 / span 5;
    grid-row: 2;
  }

  .projects table,
  .safety table {
    margin-bottom: 20px;
    width: 100%;
  }

  .projects .wrapper {
    height: 330px;
    overflow: auto;
  }

  .projects table tr:first-child,
  .safety table tr:first-child { background-color: #07101a; }

  .projects table tr,
  .safety table tr {
    background-color: #12212c;
    position: relative;
    z-index: 100;
  }

  .projects table tr:nth-child(even),
  .safety table tr:nth-child(even) { background-color: #122a3d; }

  .projects table th,
  .safety table th { font-weight: 400; }

  .projects table a,
  .safety table a { color: #fff; }

  .safety tr::after {
    background-color: #12212c;
    content: '';
    height: 100%;
    position: absolute;
      right: 0;
      left: 0;
    z-index: -999;
  }

  .safety table tr:first-child::after { background-color: #07101a; }

  .safety tr:nth-child(even)::after { background-color: #122a3d; }

  .projects .active-projects {
    float: left;
    font-size: 18px;
  }

  .projects .csv { float: right; }

  .services-and-requests-wrapper {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(2, 1fr);
    grid-column: 1 / span 3;
    grid-row: 3;
  }

  .services .wrapper,
  .repairs .wrapper {
    height: 400px;
    overflow: auto;
  }

  .services li,
  .repairs li { margin-bottom: 8px; }

  .total {
    margin-top: 20px;
    font-size: 18px;
  }

  .locations {
    grid-column: 4 / span 3;
    grid-row: 3;
  }

  .locations iframe {
    border: none;
    height: 400px;
    width: 100%;
  }

  .safety {
    grid-column: 1 / span 6;
    grid-row: 4;
  }

  .safety .panel-body {
    display: grid;
    gap: 0 20px;
    grid-template-columns: 1fr 3fr;
  }

  .safety .quick-stats {
    font-size: 18px;
    grid-column: 1;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }

  .safety .quick-stats div {
    align-items: center;
    background-color: #75cfcf;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px;
    text-align: center;
  }

  .safety .quick-stats span.figure {
    display: block;
    font-size: 36px !important;
  }

  .safety .quick-stats .days { background-color: #4eb4c3; }

  .safety .quick-stats .incidents { background-color: #3396b5; }

  .safety .quick-stats .hazard-assessments { background-color: #1a79a9; }

  .safety .panel-body > .incidents {
    grid-column: 2;
    grid-row: 1;
  }

  .safety .panel-body > .incidents .title {
    font-size: 18px;
    margin-bottom: 20px;
  }

  .safety .panel-body > div:last-child {
    grid-column: 1 / span 2;
    grid-row: 2;
    text-align: right;
  }

  .safety .btn { margin-top: 20px; }

  .safety table { margin-bottom: 0; }

  .human-resources {
    grid-column: 1 / span 2;
    grid-row: 5;
  }

  .payroll {
    grid-column: 3 / span 2;
    grid-row: 5;
  }

  .holidays {
    grid-column: 5 / span 2;
    grid-row: 5;
  }

  .human-resources .wrapper > div,
  .payroll .wrapper p,
  .holidays .wrapper > div { margin-bottom: 8px; }

  .project-stats,
  .requests,
  .employee-stats,
  .hr-stats {
    align-items: start;
    display: grid;
    gap: 0 20px;
    grid-template-columns: repeat(3, 2fr) 1fr;
  }

  .payroll-breakdown {
    display: grid;
    gap: 0 20px;
    grid-template-columns: repeat(3, 1fr);
  }

  .job-stats {
    align-items: start;
    display: grid;
    gap: 0 20px;
    grid-template-columns: repeat(4, 1fr) auto;
  }

  .section div { position: relative; }

  #labelOverlay {
    color: #fff;
    font-size: 36px;
    margin: -23px 0 0 -27px;
    position: absolute;
      left: 50%;
      top: 50%;
    text-align: center;
    width: 54px;
  }

  .legend { padding: 20px; }

  .legend ul {
    color: #fff;
    font-size: 16px;
    list-style: none;
  }

  .legend li { margin-top: 10px; }

  .legend li:first-child { margin-top: 0; }

  .legend .box {
    display: inline-block;
    height: 15px;
    margin-right: 15px;
    width: 30px;
    vertical-align: middle;
  }

  .donut-chart {
    height: 400px;
    text-align: center;
  }

  .estimates #chart_div { height: 600px; }

  .monthly-estimates {
    background-color: #192734;
    margin: 20px 0;
  }

  .login .form-row label {
    font-weight: 400 !important;
    text-transform: none !important;
    vertical-align: middle;
  }

  .login input[type="submit"] {
    background-color: #195c93;
    border: none;
    color: #fff;
    font: 16px 'Source Sans Pro', sans-serif;
    height: auto !important;
    padding: 5px 10px !important;
  }

  input[type="submit"],
  .button {
    background-color: #195c93 !important;
    border: none;
    color: #fff !important;
    font: 16px 'Source Sans Pro', sans-serif;
    height: auto !important;
    padding: 5px 10px !important;
    text-decoration: none;
    text-transform: capitalize;
  }

  .button:hover {
    color: #fff;
    text-decoration: none;
  }

  .work-order-stats {
    display: grid;
    gap: 0 20px;
    grid-template-columns: repeat(2, 1fr);
  }

  #incident_type_chart_div,
  #supervisor_po_dfa_chart_div,
  #supervisor_chart_div,
  #work_order_chart_div,
  #absentee_chart_div,
  #available_positions_chart_div { height: 525px; }

  .report .panel { margin-bottom: 20px !important; }

  .report .panel-body > div {
    height: 30px;
    margin-bottom: 15px;
  }

  .report .panel-body > div:last-child { margin-bottom: 0; }

  .report .panel-body .row {
    align-items: center;
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(6, 6fr) repeat(2, 1fr);
  }

  .report .start { grid-column: 5; }

  .report .end { grid-column: 6; }

  .report .pdf { grid-column: 7; }

  .report .csv { grid-column: 8; }

  input[type="submit"].title {
    background-color: transparent !important;
    cursor: pointer;
    font-size: 18px;
    font-weight: 400;
    padding: 0 !important;
    text-align: left;
    text-decoration: underline;
  }

  .report input[type="text"],
  .report select { width: 150px; }

  .report .label {
    display: inline-block;
    margin-right: 10px;
  }

  #result_list {
    border: none;
    border-spacing: 0;
  }

  #result_list th {
    font-weight: 400;
    text-align: left;
  }

  #result_list tr { background-color: #12212c; }

  #result_list tr:nth-child(even) { background-color: #122a3d; }

  #result_list td,
  #result_list th { padding: 10px; }

  #result_list td:first-child,
  #result_list th:first-child { padding: 0; }

  #result_list thead th { background-color: #07101a; }

  #result_list a {
    color: #fff;
    text-decoration: none;
  }

  #result_list a:hover { text-decoration: underline; }

  .object-tools { margin-bottom: 20px; }

  .object-tools li {
    list-style: none;
    margin-bottom: 10px;
  }

  .object-tools a,
  .object-tools input[type="submit"] {
    color: #fff;
    text-transform: capitalize;
  }

  .sortoptions { float: right; }

  #bar {
    align-items: center;
    background-color: #192734;
    border-bottom: none !important;
    display: flex;
    flex-flow: row nowrap;
    font-size: 16px !important;
    justify-content: space-between;
    margin-bottom: 20px;
    padding: 20px !important;
  }

  #bar > div { margin-top: 0 !important; }

  #bar a { color: #fff; }

  #bar label,
  .actions label {
    color: inherit;
    font-size: inherit;
    margin-right: 5px;
    text-transform: none;
  }

  #toolbar,
  .actions,
  .paginator,
  .xfull {
    background-color: #192734;
    display: block;
    padding: 0 20px 20px 20px;
  }

  .xfull { height: 20px; }

  .toplinks { margin: 0; }

  #toolbar { padding: 20px; }

  .paginator { margin-bottom: 20px; }

  .change-list .filtered .results .paginator,
  .results .paginator {
    display: block !important;
    width: auto !important;
  }

  #changelist-search label { display: none; }

  #changelist-search input[type="submit"],
  .actions .button { margin-right: 20px; }

  #toolbar a { color: #fff; }

  body .module.filtered,
  #changelist { background-color: transparent !important; }

  #changelist-filter {
    background-color: #0b416e !important;
    box-sizing: border-box;
    padding: 20px;
    width: 200px !important;
  }

  #search-bar {
    float: left;
    margin-right: 20px;
  }

  .object-tools {
    display: flex;
    flex-flow: row wrap;
  }

  .object-tools li { margin-right: 10px; }

  .object-tools li a {
    background-color: #195c93;
    color: #fff;
    display: block;
    padding: 5px 10px;
    text-decoration: none;
  }

  .countdown-amount { font-size: 20px !important; }

  .is-countdown { height: auto !important; }

.gantt {
  margin: 0;
  padding: 20px;
}

.fn-gantt .fn-content {
  color: #fff;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.fn-gantt .leftPanel {
  background-color: #12212c;
  border-right: none !important;
  float: none !important;
  width: auto !important;
}

.fn-gantt .leftPanel > .row {
  background-color: #12212c !important;
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  height: auto !important;
  width: auto !important;
}

.fn-gantt .leftPanel > .row .row { padding: 10px; }

.fn-gantt .leftPanel > .row:nth-child(even) { background-color: #122a3d !important; }

.fn-gantt .row {
  float: none !important;
  line-height: auto !important;
  margin-left: 0 !important;
}

.fn-gantt .leftPanel .name,
.fn-gantt .leftPanel .desc {
  background-color: transparent !important;
  border: none !important;
  width: auto !important;
  font-weight: 400;
  height: auto !important;
}

.title_header {
  background-color: #07101a;
  padding: 10px;
}

.fn-gantt .row {
  height: 33.8px !important;
  overflow: hidden;
}

.fn-gantt .rightPanel .dataPanel > .row {
  display: grid;
  grid-template-columns: repeat(37, 1fr);
}

.fn-gantt .rightPanel .dataPanel > .row:first-child,
.fn-gantt .rightPanel .dataPanel > .row:nth-child(2) {
  display: block !important;
}

.fn-gantt .day, .fn-gantt .date {
  box-sizing: border-box;
  padding: 0 !important;
  text-shadow: none !important;
  width: auto !important;
}

.fn-gantt .fn-label {
  padding: 4px 0;
  text-shadow: none !important;
}

.fn-gantt .bar .fn-label {
  font-weight: 600 !important;
  line-height: 11px !important;
  text-shadow: none !important;
}

.fn-gantt .dataPanel {
  border-right: none !important;
  height: 100% !important;
  width: auto !important;
}

.fn-gantt .rightPanel .month,
.fn-gantt .rightPanel .year {
  background-color: #192734 !important;
  border: 1px solid #293b4d;
  box-sizing: border-box;
  color: #fff !important;
  text-shadow: none !important;
}

.fn-gantt .rightPanel .month { float: left !important; }

.fn-gantt .wd {
  background-color: #192734 !important;
  border: 1px solid #293b4d;
  color: #fff !important;
}

.fn-gantt .sa,
.fn-gantt .sn {
  background-color: #122a3d !important;
  border: 1px solid #293b4d;
  color: #fff !important;
}

.fn-gantt .today {
  background-color: #195c93 !important;
  border: 1px solid #293b4d !important;
  color: #fff !important;
}

.fn-gantt .bottom {
  background-color: #07101a !important;
  grid-column: 1 / span 2;
}

.fn-gantt .navigate { border-top: none !important; }

#a-make {
  background-color: #195c93;
  color: #fff;
  display: inline-block;
  margin: 20px;
  padding: 10px 20px;
  text-decoration: none;
}

.opsboard-table { color: #fff; }

.opsboard-table table th,
.opsboard-table table td {
  padding: 10px 0;
  text-align: left !important;
}

.opsboard-table u {
  display: block;
  font-size: 20px;
  margin-bottom: 20px;
  text-decoration: none;
}

.opsboard-table b { font-weight: 400; }

.opsboard-table p { line-height: 1.5em; }

.documents-hsmainmr #content-related .module,
.documents-minutes #content-related .module,
.documents-dailyforceaccount #content-related .module,
.documents-purchaseorder #content-related .module {
  background-color:#192734;
  padding: 20px;
}

.documents-hsmainmr #content-related .module tr,
.documents-minutes #content-related .module tr,
.documents-dailyforceaccount #content-related .module tr,
.documents-purchaseorder #content-related .module tr { background-color: transparent !important; }

.documents-hsmainmr #content-related .module td,
.documents-minutes #content-related .module td,
.documents-dailyforceaccount #content-related .module td,
.documents-purchaseorder #content-related .module td { padding: 5px 0; }

.documents-hsmainmr #content-related .module tr:first-child td,
.documents-minutes #content-related .module tr:first-child td,
.documents-dailyforceaccount #content-related .module tr:first-child td,
.documents-purchaseorder #content-related .module tr:first-child td { padding-top: 0; }

.documents-hsmainmr #content-related .module tr:last-child td,
.documents-minutes #content-related .module tr:last-child td,
.documents-dailyforceaccount #content-related .module tr:last-child td,
.documents-purchaseorder #content-related .module tr:last-child td { padding-bottom: 0; }

h1 { text-transform: capitalize !important; }

.deletelink-box a {
  color: #fff;
  margin-right: 10px;
}

.documents-hsmainmr .selector .selector-available h2,
.documents-hsmainmr .selector-available h2, .selector-chosen h2 {
  color: #fff !important;
  margin-bottom: 5px !important;
  text-transform: none !important;
}

.documents-hsmainmr .selector-available h2, .selector-chosen h2 { margin-top: 20px; }

form .aligned p.help {
  margin-top: 20px;
  margin-bottom: 5px;
}

.selector .selector-filter {
  border: none !important;
  margin-top: -30px !important;
}

.documents-hsmainmr a { color: #fff; }

p.file-upload {
  color: #fff !important;
  font-size: 16px !important;
}

.file-upload a {
  display: inline-block !important;
  margin-bottom: 10px !important;
}

.file-upload { max-width: 400px !important; }

.submit-row {
}

textarea {
  color: #c9c9c9 !important;
  background-color: #07101a !important;
  font: 16px 'Source Sans Pro', sans-serif !important;
  padding: 10px;
}

.equipment-grid {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(6, 1fr);
  padding-bottom: 20px;
}

div#header-banner {
  background-color: #195c93 !important;
  box-sizing: border-box;
  grid-column: 1 / span 2;
  height: 100% !important;
  padding: 20px !important;
  width: auto !important;
}

div#header-banner h2,
div#header-banner h3 {
  margin-top: 0;
  text-shadow: none !important;
}

.equipment-grid a:hover { color: #fff;}

.equipment-grid .photos {
  grid-column: 1 / span 3;
}

.equipment-stats .statistic {
  height: 100px !important;
  width: auto !important;
  vertical-align: middle;
}

.equipment-stats .statistic .number { font-size: 28px; }

.equipment-stats .statistic .info { font-size: 18px; }

.day {
  background-color: #192734;
  color: #fff;
  margin: 20px 20px 20px 0;
  padding: 20px;
}

.day h3 {
  border-bottom: 1px solid #fff;
  margin: 0 0 30px 0;
}

.day .span5 { width: 30% !important; }

.day div.row { margin: 0 !important; }

.day table tr:first-child { background-color: #07101a; }

.day table tr {
  background-color: #12212c !important;
  position: relative;
  z-index: 100;
}

.day table tr:nth-child(even) { background-color: #122a3d !important; }

.day thead th,
.day tfoot td { background-color: #07101a !important; }

.day table th,
.day table td {
  border: none !important;
  font-weight: 400;
}

.day table a { color: #fff; }

.report-info {
  color: #fff;
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(auto-fit, minmax(600px, 1fr));
  margin-right: 20px;
  overflow: hidden;
}

.report-info .span10 {
  background-color: #192734;
  padding: 15px;
  width: auto !important;
}

.report-info .span10,
.day .span5:first-child { margin-left: 0 !important; }

.report-info dt,
.report-info dd {
  font-size: 20px !important;
  margin-bottom: 10px;
}

.report-info dd p { line-height: 1.5em; }

.dl-horizontal dt {
  text-align: left !important;
  width: 260px !important;
}

.day dt,
.day dd {
  font-size: 16px;
  margin-bottom: 10px;
}

.day dd p { line-height: 1.5em; }

.day dd p:last-child { margin: 0 !important; }

.row.edit {
  background-color: #192734;
  color: #fff;
  margin: 20px 0 !important;
  padding: 15px;
}

.row.edit .row { margin: 0 0 20px 0 !important; }

.row.edit h4 {
  font-size: 20px;
  font-weight: 400;
  margin: 0 0 30px 0;
}

.row.edit table {
  margin-bottom: 0 !important;
  overflow-x: hidden;
}

.row.edit table a { color: #fff !important; }

.row.edit thead th,
.row.edit table tfoot td {
  background-color: #07101a !important;
  font-weight: 400 !important;
}

.row.edit table tr { background-color: #12212c; }

.row.edit table.company-equipment tr.odd,
.row.edit table:not(.company-equipment) tr:nth-child(odd) { background-color: #122a3d; }

.row.edit table td {
  background-color: transparent !important;
  border-top: none !important;
}

.select2-container--default,
.select2-selection--single,
.row.edit select,
.row.edit input {
  background-color: #07101a;
  border: none;
  color: #fff !important;
}

.select2-selection--single .select2-selection__rendered { color: #fff !important; }

.row.edit a.btn,
.row.edit .btn {
  background-color: #1a79a9 !important;
  background-image: none;
  color: #fff;
  font: 16px 'Source Sans Pro', sans-serif;
  text-shadow: none;
}

.row.edit label {
  font-size: 16px !important;
  margin-right: 20px;
  vertical-align: middle;
}

.row.edit label.text,
.row.edit .condition label.control-label,
.row.edit .delay-day label.control-label {
  float: left;
  line-height: 30px;
  width: 120px;
}

.row.edit .span6 { width: 760px; }

.delay-day .control-group { margin-left: 0 !important; }

.delay-day .control-group select { margin-left: 0 !important; }

.delay-day label { display: block !important; }

.fuel-required .input-block-level { width: 300px !important; }

.row.edit select { font: 'Source Sans', sans-serif !important; }

.row.edit [class*="span"] { margin: 0 20px 0 0 !important; }

.row.edit textarea { border: none; }

.help-block { color: #999 !important; }

.row.edit .table-striped { color: #fff !important; }

#content-related table tr,
#content-related table tr:nth-child(even) { background-color: transparent !important; }

#content-related table th,
#content-related table td { padding: 0 0 10px 0 !important; }

.is-countdown {
  border: none !important;
  background-color: transparent !important;
  color: #fff !important;
  min-height: 50px !important;
}

/*#alert-countdown { height: 40px !important; }*/

/*.form-row {
  font-size: 16px !important;
  margin: 15px 0 !important;
  padding: 0 !important;
}

.aligned label {
  color: #fff !important;
  font-size: 16px !important;
  text-transform: none !important;
  width: 240px !important;
}

.submit-row {
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 20px 0 !important;
}

.field-overview table,
.field-external_links table { text-transform: capitalize; }

.field-overview table tr,
.field-overview table tr:nth-child(even),
.field-external_links table tr,
.field-external_links table tr:nth-child(even) { background-color: transparent !important; }

.field-overview table td,
.field-external_links table td { padding: 0 0 10px 0 !important; }

.inline-group,
.inline-group .tabular fieldset.module { border: none !important; }

.inline-group .tabular tr.add-row td {
  background-color: transparent !important;
  background-image: none !important;
  color: #fff !important;
}

.inline-field { background-color: transparent !important; }

fieldset.collapsed h2 {
  background-image: none !important;
  color: #fff !important;
}

.inline-group .tabular td.original p { display: none !important; }

.inline-group .tabular tr.add-row td a { font-size: 16px !important; }

.module a { color: #fff; }

.gantt { background-color: #192734 !important; }

.inline-group div.add-row {
  color: #fff !important;
  background-color: #192734 !important;
  background-image: none !important;
  border-bottom: none !important;
}

.inline-group div.add-row a {
  background-color: #192734;
  background-image: none;
  color: #fff !important;
  font-size: 16px !important;
}

.fn-gantt .leftPanel .fn-label {
  color: #fff !important;
  font-weight: normal !important;
}

#content-related .qm-documents table,
#content-related .gantt-chart table { width: 100% !important; }

input[type="file"] {
  background-color: #07101a !important;
  border-radius: 0 !important;
  color: #ccc !important;
}

.vLargeTextField { width: 400px !important; }

.module.aligned.wide:nth-child(3) > [class*="field-"] {
  clear: left;
  float: left;
  margin: 0 20px 20px 0 !important;
  width: 240px;
}

.module.aligned.wide:nth-child(3) > [class*="_comments"] {
  clear: none !important;
  float: none !important;
  width: auto !important;
}

.module.aligned.wide label {
  margin-right: 20px;
  padding: 0 !important;
  width: auto !important;
}

.inline-related h3 {
  background-color: #07101a !important;
  background-image: none !important;
  border-bottom: none !important;
  color: #fff !important;
  font-size: 16px !important;
  padding: 15px !important;
}

.bookings a {
  color: #000 !important;
  font-size: 14px !important;
}

.field-box.field-engine_oil_ok,
.field-box.field-trans_oil_ok,
.field-box.field-coolant_ok,
.field-box.field-hyd_oil_ok,
.field-box.field-gear_oil_ok,
.field-box.field-clear_and_marked { width: 200px !important; }

.field-box { position: relative !important; }

.field-engine_oil_ok p.help,
.field-trans_oil_ok p.help,
.field-coolant_ok p.help,
.field-hyd_oil_ok p.help,
.field-gear_oil_ok p.help,
.field-clear_and_marked p.help {
  display: none;
}

label[for="id_start_0"],
label[for="id_end_0"],
label[for="id_date_time_0"] { min-height: 50px; }

p.datetime {
  color: #fff !important;
  font-size: 16px !important;
}

#id_start_0,
#id_end_0,
#id_date_time_0 { margin-bottom: 10px; }

.field-physical_limitations label,
.field-workplace_accident label,
.field-wcb_claim label,
.field-drug_free label,
.field-drug_right_now label,
.field-seasonal label,
.field-available_hours label,
.field-remote_work label,
.field-wage_expectation label,
.field-when_available label,
.field-reach label,
.field-smart_phone_experience label,
.field-vaccination_status label,
.field-physical_limitations label { width: 800px !important; }

.ui-slider { margin: 5px 0 !important; }

/* form .aligned .form-row [class*="field-"] { width: 380px; } */

/*form .aligned .form-row [class*="field-"] p {
  float: right;
  font-size: 16px !important;
  margin: 5px 0;
  width: 13px;
  padding: 0 !important;
}

fieldset.aligned [class*="field-"] p.help {
  margin: 0 !important;
 padding-top: 6px !important;
}

fieldset .field-box { margin-right: 40px !important; }

.field-incident_information label,
.field-incident_information p,
.field-overview label,
.field-overview p,
.field-approved_time label,
.field-approved_time p,
.field-external_links label,
.field-external_links p { display: none !important; }

.field-incident_information table { width: 100% !important; }

#carousel {
  height: 512px !important;
  margin: 20px 0 !important;
}

form fieldset.aligned.wide-60:first-of-type .form-row [class*="field-"] { width: 480px !important; }

form fieldset.aligned.wide-60:first-of-type .form-row label {
  float: left !important;
  margin-right: 10px;
}

form fieldset.aligned.wide-60:first-of-type .form-row input { float: left !important; }

form fieldset.aligned.wide-60:first-of-type .form-row input[type="checkbox"] { margin: 5px 10px 5px 0 !important; }

.module.aligned.wide [class*="field-"] label { width: 180px !important; }

.form-row .field-mileage,
.form-row .field-hours-of-labour,
.form-row .field-hours_operated,
.form-row .field-hours_of_service,
.form-row .field-next_service_hours_due,
.form-row .field-next_service_date {
  float: left;
  margin-right: 40px;
  width: 480px !important;
}

.form-row.field-mileage,
.form-row.field-hours-of-labour,
.form-row.field-hours_operated,
.form-row.field-hours_of_service,
.form-row.field-next_service_hours_due,
.form-row.field-next_service_date { width: 100% !important; }

.form-row .field-engine_oil_addition,
.form-row .field-trans_oil_addition,
.form-row .field-coolant_addition,
.form-row .field-hyd_oil_addition,
.form-row .field-gear_oil_addition,
.form-row .field-fuel { width: 600px !important; }

fieldset.aligned .form-row.field-fixes p.help { margin-bottom: 20px !important; }

.selector h2 { color: #fff !important; }

.selector-available,
.selector-chosen { text-align: left !important; }

#rentalsonsite_set-group .vTextField { width: 300px !important; }

#hsmdtswp_set-group .vTextField,
#safetyticket_set-group .vTextField,
#hsmdtswp_set-group .select2-container {
  max-width: 200px !important;
  min-width: auto !important;
}

#hsmdtswp_set-group .vLargeTextField { width: 360px !important; }

#content-related #content-related { padding-left: 0 !important; }

#release-by-field-select .help-text { font-size: 16px !important; }

.action-counter {
    text-transform: capitalize;
}

.report-row {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
}
.input-append a{
    height: 20px;
    display: inherit;
    margin-top: 0px;
    margin-left: 4px;
}

.success{
    list-style-type: none;
    margin-left: 18px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #5897fb !important;
}

*/