body { text-align: center; margin: 0px; padding: 0px; background: linear-gradient(150deg, #fefefc, #fefefc ); background-size: 100% 100%; min-height: 100vh; min-width: 100vw; }

div.site-header { background-color: #fefefc; }
div.site-header { background-color: #fefefc; }
.site-header .logo_large { height: 90px; background-image: url("../graphics/logo_large.jpg"); background-repeat: no-repeat; background-position: center; }
.site-header .logo_medium { height: 90px; background-image: url("../graphics/logo_medium.jpg"); background-repeat: no-repeat; background-position: center; }
.site-header .logo_small { height: 57px; background-image: url("../graphics/logo_small.jpg"); background-repeat: no-repeat; background-position: center; }

.color-red { color: #750003; }
.color-blue { color: #213850; }

.dropdown-submenu {
  position: relative;
}

.dropdown-submenu a::after {
  transform: rotate(-90deg);
  position: absolute;
  right: 6px;
  top: .8em;
}

.dropdown-submenu .dropdown-menu {
  top: 0;
  left: 100%;
  margin-left: .1rem;
  margin-right: .1rem;
}

.dropdown-submenu.active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}

.dropdown-submenu.active > a.dropdown-item {
  color: #fff;
}

.admin-nav { padding-left: 15px; }
.admin-nav .nav-item>a { color: #fff; }
.admin-nav .nav-item>span { color: #fff; }

.bg-custom { background-color: #155734; }
.bg-blue { background-color: #213850; }

.bg-nav { background: linear-gradient(150deg, #dd3832, #dd3832 ); }

.card { background-color: #dddbdb; }
.card-button { border: none; background: transparent; }

.card.tile { background-color: #ffffff; margin-right: 10px; margin-bottom: 10px; text-decoration: none; }
.card.tile .card-body { padding: 3px; }
.card.tile .tile { height: 100px; width: 100px; overflow: hidden; background-position-x: -100px; }
.card.tile:hover .tile { background-position-x: 0px; }
.card.tile .card-button { padding: 0px; color: #007bff; }

.card-img {
  border: 1px solid #010560;
}

.border-blue {
  border-color:#010560 !important;
}

.debug { margin-top: 30px; text-align: left; padding: 10px; font-size: 12px; background: rgba(200, 54, 54, 0.2); }
.debug p { margin-bottom: 2px; }

.btn.btn-xs { padding: 1px 5px; font-size: 12px; line-height: 1.5; border-radius: 3px; }

th.rotate > div { transform: translate(2px, 1px) rotate(315deg); width: 20px; }

.checkbox { width: 38px; padding: 6px; }

.mt-header { margin-top: 120px; }

.nav.stepper { position: relative; }
.nav.stepper .nav-item { position: relative; border: 1px solid #dee2e6; border-radius: 50px; margin-right: 20px; }
.nav.stepper .nav-item .nav-link { border-radius: 50px; }
.nav.stepper .nav-item::after { content: " "; display: block; position: absolute; height: 50%; width: 20px; top: 0px; left: 100%; border-bottom: 2px solid #dee2e6; }
.nav.stepper .nav-item:last-child::after { content: " "; display: none; }

.selectable { cursor: pointer; }

.form-group.required input.form-control { border-left: 4px solid #750003; }
.form-group.required-valid input.form-control { border-left: 4px solid #155734; }
input:invalid { border: 1px solid #dc3545; }

ul.repo-tree { text-align: left; }
ul.repo-tree li.list-group-item { border: 0px; padding: 0; }
ul.repo-tree.sub-node { padding-left: 1.25rem }
ul.repo-tree button.list-group-item { border: 0px; padding: .25rem .5rem; }

tr.docrepo-item td { padding: 2px 20px; }
tr.docrepo-item:hover { background-color: rgba(0, 0, 0, .075); }

a.form-control { width: 40px; padding: .375em; margin-left: 15px; margin-right: 15px; }

.accordion.document-list .card { background-color: transparent; border: 0px; margin-bottom: 10px; }
.accordion.document-list div.card-header { background-color: transparent; padding: 0px; }
.accordion.document-list .card-header button { font-size: inherit; color: #212529; padding: 2px 0px; line-height: 1; }
.accordion.document-list .card-header button:hover { text-decoration: none; }
.accordion.document-list .card-header button:focus { text-decoration: none; }

.form-control-thin { height: 1.5em; padding: 0px; text-align: center; }
.input-group-append .input-group-text.form-control-thin { height: 1.5em; padding: 0px 5px; text-align: center; }

@media (min-width: 576px) {
  .mt-header { margin-top: 150px; }
}

@media (min-width: 768px) {
  .mt-header { margin-top: 150px; }
}

@media (min-width: 992px) {
  .mt-header { margin-top: 150px; }
}

@media (min-width: 1200px) {
  .mt-header { margin-top: 150px; }
}
