﻿@charset "UTF-8";
@import 'https://fonts.googleapis.com/css2?family=Inter&display=swap';
/* new clearfix */
.clearfix {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

/* IE6 */
* html .clearfix {
  zoom: 1;
}

/* IE7 */
*:first-child + html .clearfix {
  zoom: 1;
}

.center {
  text-align: center;
}

.margin-zero {
  margin: 0 auto !important;
}

/* TYPOGRAPHY */
body, p, div {
  font-size: 16px;
  color: #707070;
  font-family: "Inter", sans-serif;
  Line-height: 1.5;
}

table {
  font-size: 14px;
  color: #707070;
  font-family: "Inter", sans-serif;
  Line-height: 1.5;
}

P {
  margin-bottom: 32px;
}

a {
  text-decoration: none;
  color: #1a68a1;
}

.font-16 {
  font-size: 16px !important;
  padding-top: 5px;
}

.btn-link {
  text-decoration: none;
}

a:hover {
  color: #2C455B;
}

h1 {
  color: #2C455B;
  font-size: 32px;
  border-bottom: 1px solid #efefef;
  padding: 0px 2rem 18px 2rem;
  margin: 0rem -2rem 1rem -2rem;
}
@media screen and (max-width: 768px) {
  h1 {
    font-size: 24px;
  }
}

h2 {
  border-bottom: 1px solid #dbdbdb;
  border-top: 1px solid #dbdbdb;
  font-size: 22px;
  margin-bottom: 18px;
}

.fullwidth {
  background-color: #f8f8f8;
  margin: 1rem -2rem 1rem -2rem;
  padding: 14px 2rem;
}
@media screen and (max-width: 479px) {
  .fullwidth {
    display: flex;
    flex-direction: column;
    text-align: center;
    margin: 2rem -2rem;
    padding: 1.5rem;
  }
}
@media screen and (max-width: 479px) {
  .fullwidth a {
    display: block;
    background-color: #2C455B;
    color: white;
    padding: 12px;
    margin: 1rem 0rem;
    text-align: center;
    border-radius: 8px;
  }
}

.align-right, table.dataTable thead th.align-right {
  text-align: right;
}

h3 {
  color: #999999;
  font-size: 18px;
  margin-bottom: 18px;
}

h4 {
  color: #2C455B;
  font-size: 18px;
  margin-bottom: 18px;
}

.divider {
  display: block;
  border-bottom: 1px solid #efefef;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Trebuchet MS", sans-serif;
}

.primary {
  color: #2C455B !important;
}

.btn-primary {
  background-color: #2C455B !important;
  border-color: #2C455B !important;
  margin-top: 10px;
}

.btn-outline-primary {
  color: #1a68a1 !important;
  border-color: #1a68a1 !important;
}

.btn-outline-primary:hover {
  color: #fff !important;
  border-color: #1a68a1 !important;
  background-color: #1a68a1 !important;
}

.btn-primary:hover {
  background-color: #1a68a1 !important;
  border-color: #1a68a1 !important;
}

.secondary {
  color: #6958cf !important;
}

.btn-secondary {
  background-color: #6958cf !important;
  border-color: #6958cf !important;
}

.btn-outline-secondary {
  color: #6958cf !important;
  border-color: #6958cf !important;
}

.btn-outline-secondary:hover {
  background-color: #6958cf !important;
  border-color: #6958cf !important;
  color: #fff !important;
}

.form-floating {
  margin-bottom: 10px;
}

/* Bootstrap was hiding the dropdown caret on select with the .form-control class */
select.form-control {
  -webkit-appearance: auto;
  -moz-appearance: initial;
  appearance: auto;
}

.dataTable.table {
  color: #707070;
}

.dataTable.table-striped > tbody > tr:nth-of-type(odd) {
  --bs-table-accent-bg: $gray;
  color: #707070;
}

body {
  overflow-x: hidden;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* Forms */
form {
  width: 100%;
}

/* Buttons on the top of the page with the breadcrumbs*/
.top-buttons {
  margin-bottom: 1rem;
}
.top-buttons .btn {
  margin-top: 0;
}

/* HEADER */
header {
  background-color: #fff;
  padding: 1rem;
  position: fixed;
  top: 0px;
  left: 0px;
  Width: 100%;
  Z-index: 100000;
  box-shadow: 0px 3px 8px 0px rgba(15, 15, 15, 0.1);
}
header .main-logo {
  max-height: 33px !important;
}

header ul {
  margin: 0px;
}

header li {
  list-style-type: none;
  display: inline;
}

header a {
  color: #707070;
  margin-left: 1rem;
}

header a:hover {
  color: #1a68a1;
}

.header-icons li {
  display: inline-block;
  margin-left: 5px;
}

.header-icons button {
  border: none !important;
  background-color: #fff !important;
}

/* BREADCRUMB */
.breadcrumb {
  font-family: "Trebuchet MS", sans-serif;
}
@media screen and (max-width: 768px) {
  .breadcrumb {
    justify-content: center;
    border-bottom: 1px solid #d1d1d1;
  }
}
.breadcrumb ul {
  list-style-type: none;
}
.breadcrumb li {
  display: inline-block;
  margin-right: 1.5rem;
}
.breadcrumb li:not(:first-child):before {
  content: "–";
  position: absolute;
  margin-left: -20px;
}
.breadcrumb a {
  color: #5e5e5e;
}

.top-buttons form {
  width: auto;
  margin: 0px 3px;
}

@media screen and (max-width: 768px) {
  .top-buttons.text-end {
    text-align: center !important;
  }
  .top-buttons .btn {
    margin-bottom: 5px;
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .col-md-12.text-end {
    display: flex;
    flex-direction: column-reverse;
    text-align: center !important;
  }
}

/* FOOTER */
footer {
  background-color: #e9e9e9;
  display: block;
  width: 100%;
  padding: 1rem 2rem 1rem 2rem;
  font-size: 12px;
}

footer div {
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  footer div {
    display: block;
    text-align: center !important;
  }
}

/* BODY */
.mobile-only {
  display: none;
}
@media screen and (max-width: 1023px) {
  .mobile-only {
    display: block !important;
  }
}

.desktop-only {
  display: block;
}
@media screen and (max-width: 1023px) {
  .desktop-only {
    display: none !important;
  }
}

.wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  background-color: #fbfcfd;
  min-height: 100vh;
  width: 100%;
  flex: auto;
}

.container {
  flex: auto;
  padding: 2rem 1rem 0rem 1rem;
  background-color: #f8f8f8;
  margin: 5rem 0rem 0rem 0rem;
  border-radius: 24px;
  min-width: none;
  width: auto;
  min-height: 100vh;
  flex-grow: 1;
  flex-basis: 80%;
  max-width: none !important;
  overflow-x: auto; /* Wider grids on narrower screens were causing the main content area to drop below the nav menu */
}
@media screen and (max-width: 1200px) {
  .container {
    margin: 3rem 0rem 5rem 0rem;
  }
}
@media screen and (max-width: 768px) {
  .container {
    margin: 1rem 0rem;
  }
}
@media screen and (max-width: 768px) {
  .container .btn {
    width: 100%;
    display: block;
    margin-bottom: 5px;
  }
}
@media screen and (max-width: 768px) {
  .container .table-responsive tr {
    margin: 0rem 0rem 1rem 0rem;
  }
}
@media screen and (max-width: 768px) {
  .container .dataTables_filter input {
    margin-left: 0px !important;
    width: 100% !important;
  }
}
@media screen and (max-width: 1200px) {
  .container .dataTables_length select {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .container .dataTables_filter {
    padding: 0px;
    background-color: transparent;
    border-bottom: 0px;
  }
}
@media screen and (max-width: 768px) {
  .container .dataTables_filter input {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .container .dataTables_filter label {
    display: block;
    width: 100%;
    white-space: normal !important;
    text-align: center !important;
  }
}

main {
  background-color: #fff;
  padding: 2rem;
  border-radius: 24px;
}

/* Login and Forgot password pages */
.login-back {
  background-image: url(/images/moet-login-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
}

.login-center {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  height: 90vh;
}

.login-form {
  max-width: 95%;
  width: 400px;
  background-color: #fff;
  padding: 2em 2em;
  border: none;
  display: table;
  border-radius: 0.9rem;
}

div.login-content {
  display: table-cell;
  vertical-align: middle;
}

.login-link {
  margin-top: 10px;
}

/* Inputs */
form label {
  font-weight: bold;
}

.details-label {
  font-weight: bold;
}

input, textarea, select {
  width: 100%;
  font-family: "Inter", sans-serif;
}
input.btn, textarea.btn, select.btn {
  width: auto;
}

.form-group {
  margin-bottom: 1.5rem;
}

select {
  padding: 10px 12px;
  border: 1px solid #ced4da;
  border-radius: 4px;
}

/* Filters */
.filters {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 0;
  padding-bottom: 1rem;
}
.filters .btn-group {
  width: 100%;
  display: block;
}
.filters .form-check input {
  border: 1px solid #d1d1d1;
}
.filters .form-check label {
  font-weight: normal !important;
}
.filters .multiselect-selected-text {
  width: 100%;
  display: block;
  text-align: left;
}
.filters .multiselect {
  padding: 0px !important;
  background-color: transparent !important;
  border: none !important;
  color: #2C455B !important;
  margin-top: -3px;
  margin-left: 6px;
}
@media screen and (max-width: 768px) {
  .filters .multiselect {
    margin: 4px !important;
  }
}
.filters .multiselect :after {
  content: "▼";
  margin-left: 12px;
  font-size: 9px;
  position: relative;
  top: -2px;
}
.filters .span-error {
  display: flex;
  width: auto;
}
.filters .btn-apply {
  border: 1px solid #2C455B;
  padding: 6px 24px !important;
  border-radius: 24px;
}
.filters .filter-controls {
  /*  display: flex;*/
  width: auto;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .filters .filter-controls {
    width: 100%;
  }
}
.filters .filter-controls .btn {
  /*padding: 0px;*/
  font-size: 14px;
  background-color: transparent;
}
.filters .multiselect-native-select {
  display: block;
  width: 100%;
}
.filters .multiselect-selected-text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  width: 90%;
}
@media screen and (max-width: 768px) {
  .filters .multiselect-selected-text {
    width: 80%;
  }
}
.filters .form-check-label {
  max-width: 95%;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.filters .form-group {
  width: auto;
  border: 1px solid #e8e8e8;
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 6px;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .filters .form-group {
    width: 100%;
    margin: 0.5rem 0rem;
    justify-content: left;
  }
}
.filters .selected-state {
  border: 2px solid #2C455B !important;
}
.filters input {
  border: 0px;
}
.filters select {
  width: auto;
  border: none !important;
  background-color: transparent;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .filters select {
    width: 100%;
  }
}
.filters .select2-container--default,
.filters .select2-selection--multiple {
  border: none;
  background-color: transparent !important;
}
@media screen and (max-width: 768px) {
  .filters .select2-container--default,
  .filters .select2-selection--multiple {
    display: inline-block;
    width: 100% !important;
  }
}
.filters .flex-label-width label {
  width: 45%;
}
.filters .flex-label-width input {
  width: auto;
}

.multiselect-native-select {
  padding: 0.375rem 0.15rem;
}

/* Item Pages*/
.bordered-cell {
  border: 1px solid #efefef;
}

.padding-20 {
  padding: 20px;
}

#pullRequest .form-group {
  padding: 3px;
}

.pullRequestItemsRedBorder {
  border: 2px solid #dc3545 !important; /* Bootstrap danger red */
  background-color: #fff0f0;
}

#myTab button {
  padding: 0.5vw 8vw;
  font-weight: bold;
}

#myTab .nav-link {
  border: 1px solid #d1d1d1;
  color: #2C455B;
}
#myTab .nav-link:hover {
  background-color: #484848 !important;
  cursor: pointer;
  color: #fff !important;
}
#myTab .nav-link.active {
  background-color: #2C455B !important;
  color: #fff !important;
}
#myTab .nav-link.active:hover {
  background-color: #484848 !important;
  color: #fff !important;
}

.request-status {
  padding: 6px 12px;
  border-radius: 14px;
  color: white;
  font-size: 11px;
  letter-spacing: 0.5px;
  position: relative;
  top: -6px;
  left: 5px;
  font-weight: bold;
}

.status-Draft {
  background-color: orange;
}

.status-Submitted {
  background-color: #007bff;
}

.status-Denied {
  background-color: red;
}

.status-Approved {
  background-color: #28a745;
}

.status-Completed {
  background-color: #198754;
}

/* NAVIGATION */
@media screen and (max-width: 1200px) {
  header {
    padding: 1rem 0rem;
  }
}

@media screen and (max-width: 1200px) {
  #mainNav {
    padding: 0px !important;
    max-width: 100% !important;
    justify-content: space-between;
  }
  #mainNav div {
    width: auto !important;
  }
  #mainNav .logo-container {
    max-width: 60%;
  }
  #mainNav .user-icons {
    max-width: 40%;
  }
}
#mainNav .navbar-toggler {
  display: none;
}
@media screen and (max-width: 1023px) {
  #mainNav .navbar-toggler {
    display: inline-block !important;
  }
}
#mainNav .main-logo {
  max-width: 60%;
}

nav {
  position: sticky;
  margin-top: 60px;
  min-width: 190px;
}
nav.navbar-dark {
  /* Using the bootstrap navbar-dark and this has !important tag on it, so we need !important on here to use that dark default */
  background-color: #2C455B !important;
}
nav.slim {
  max-width: 50px !important;
  min-width: 0px !important;
}
@media screen and (max-width: 1023px) {
  nav.slim {
    min-width: none !important;
    max-width: 0px !important;
  }
}
@media screen and (max-width: 1200px) {
  nav {
    padding: 0px !important;
  }
}
@media screen and (max-width: 1023px) {
  nav {
    margin-top: 60px;
  }
  nav .navbar-nav {
    padding-left: 15px;
  }
}

nav ul {
  margin-top: 1rem;
}

nav li {
  list-style-type: none;
  margin-left: -0.5rem;
  color: #fff;
  text-align: left;
}
nav li button {
  border: none;
  background-color: transparent;
  outline: none;
}
nav li.nav-item {
  padding: 4px 8px 4px 20px;
  width: 198px;
}
@media screen and (max-width: 1023px) {
  nav li.nav-item {
    width: 100%;
  }
}
nav li ul {
  padding: 0;
  margin-top: 0;
}
nav li ul li {
  padding: 0;
  margin-left: 0;
}
nav li ul li.nav-item {
  padding: 4px 0 0 57px;
}

nav li a {
  color: #fff;
  width: 100%;
  display: block;
  padding: 1rem 0rem;
}

nav li i {
  margin-right: 0.5rem;
  min-width: 17px; /* Sizing this to make the space between the icons and the labels more consistent */
}

nav .active {
  background-color: #1a68a1;
}

nav li.nav-item:hover {
  background-color: #1a68a1;
}

.nav-item .fa-chevron-down {
  font-size: 10px;
  position: relative;
  top: -1px;
  min-width: 0px;
  padding-right: 0px;
}

/* Bootstrap navbar adjustments */
nav.navbar, nav .navbar-collapse {
  align-items: normal;
}
@media screen and (max-width: 1023px) {
  nav.navbar, nav .navbar-collapse {
    align-items: center;
    width: 100%;
  }
}
nav .nav-link, nav a.nav-link:hover {
  color: white;
  font-family: "Trebuchet MS", sans-serif;
}
nav.navbar-dark .navbar-nav .nav-link {
  color: white;
}
nav.navbar-dark .navbar-nav .nav-link:focus {
  color: white;
}
nav.navbar-dark .navbar-nav li ul li .nav-link {
  color: #CCCCCC;
}
nav.navbar-dark .navbar-nav li ul li .nav-link:focus {
  color: #CCCCCC;
}

/* Nav Slimmer */
nav li.nav-item.nav-slimmer {
  padding: 4px 10px 4px 30px;
  cursor: pointer;
}
@media screen and (max-width: 1023px) {
  nav li.nav-item.nav-slimmer {
    display: none;
  }
}

/* slim class to be added to nav element with navbar class */
.navbar:not(.slim) .slim-show {
  display: none;
}

/* Hide slim elements when it is smaller width with hamburger menu */
@media screen and (max-width: 1023px) {
  .slim-show {
    display: none;
  }
}
/* If it is bigger screen (not hamburger menu width), using slimming styles if selected */
@media screen and (min-width: 1023px) {
  .slim {
    width: 50px;
  }
  .slim .nav-item {
    width: 65px;
  }
  .slim .slim-hide {
    display: none !important;
  }
  .slim li {
    margin-left: -1rem;
  }
  .slim li i {
    padding-right: 0;
    margin-right: 0;
    padding-left: 0.2rem;
  }
  .slim .nav-link {
    margin-right: 0;
  }
  .slim .nav-item {
    padding: 4px 10px 4px 20px;
  }
}
.navbar-nav {
  position: fixed;
}
.navbar-nav .fa-chevron-down {
  float: right;
  top: 8px;
}
@media screen and (max-width: 1023px) {
  .navbar-nav .fa-chevron-down {
    float: none;
    top: -1px;
  }
}
@media screen and (max-width: 1023px) {
  .navbar-nav {
    position: fixed;
    background-color: #2C455B;
    top: 46px;
    left: 0px;
    width: 100%;
    z-index: 10000;
    height: 20vh;
    max-height: 20vh;
    overflow: hidden !important;
  }
}

@media screen and (max-width: 1023px) {
  .navbar-nav {
    max-height: 0px;
    transition: max-height 0.2s;
    flex-wrap: nowrap;
  }
}

@media screen and (max-width: 1023px) {
  .show .navbar-nav {
    height: auto;
    overflow-y: auto !important;
    max-height: calc(100% - 60px);
    transition: max-height 0.2s ease-in-out;
    padding-bottom: 20px;
    padding-top: 16px;
  }
}

/* GRIDS (DataTables JS Customization) */
td, tr, th, thead {
  border-color: #e2e2e2 !important;
}

thead {
  border-top: 1px solid #e2e2e2;
}

th, thead {
  color: #5e5e5e;
}

.items-img {
  max-width: 120px;
  max-height: 120px;
  border: 0px;
  border-radius: 0px;
  margin-left: auto;
  margin-right: auto;
  display: block;
  padding: 10px;
}
@media screen and (max-width: 768px) {
  .items-img {
    max-width: 100% !important;
    max-height: none !important;
  }
}

.mobile-label {
  display: none;
}

@media screen and (max-width: 1200px) {
  .table-responsive .mobile-label {
    display: inline;
    font-weight: bold;
  }
  .table-responsive thead {
    display: none;
  }
  .table-responsive tr {
    display: inline-block;
    border: 1px solid #efefef;
    margin: 1rem;
    border-radius: 4px;
    width: 100%;
  }
  .table-responsive td {
    padding: 8px 10px;
    display: block;
    border-bottom: 1px solid #d1d1d1;
  }
  .table-responsive img {
    max-width: 200px;
    max-height: 200px;
  }
}

div.dataTables_wrapper div.dataTables_length {
  visibility: collapse;
  float: left;
  margin-left: -24px;
  margin-top: 16px;
}
@media screen and (max-width: 1200px) {
  div.dataTables_wrapper div.dataTables_length {
    float: none;
    margin-left: 0;
    margin: 0px;
  }
}

div.dataTables_wrapper div.dataTables_length select {
  visibility: visible;
}

/* Hide the default dt-buttons so that we can position them in a different place and just trigger these buttons elsewhere with click events (ie csv-export click) */
.dt-buttons {
  display: none;
}

.pagination .page-item .page-link {
  color: #2C455B;
}
.pagination .page-item.active .page-link {
  background-color: #2C455B;
  border-color: #2C455B;
  color: white;
}

div.dataTables_processing {
  top: 0% !important;
}

#inventoryGrid td {
  vertical-align: middle;
  padding: 16px 4px;
  border-color: #efefef !important;
}
@media screen and (max-width: 768px) {
  #inventoryGrid td {
    padding: 8px;
  }
}

#itemsGrid td {
  vertical-align: middle;
  padding: 16px 4px;
  border-color: #efefef !important;
}
@media screen and (max-width: 768px) {
  #itemsGrid td {
    padding: 8px;
  }
}

.dataTables_filter {
  border-bottom: 1px solid #e8e8e8;
  background-color: #f6f6f6;
  padding: 16px;
}

select.form-select.form-select-sm {
  color: #707070;
}

.dataTables_info {
  font-size: 12px;
}

ul.pagination {
  font-size: 14px;
}
