:root {
  /* Brand Colors */
  --primary-color: #007e8f;
  --primary-dark: #044f63;
  --primary-dark-alt: #003f48;
  
  /* Gray Colors */
  --gray-lightest: #f8f8f8;
  --gray-lighter: #f4f4f4;
  --gray-light: #e8e8e8;
  --gray-medium: #888;
  --white: #ffffff;
  
  /* Component Colors */
  --main-nav-bg: var(--primary-dark);
  --main-nav-border-color: var(--gray-medium);
  --login-card-border-color: var(--primary-dark);
  --dropdown-toggle-color: var(--white);
  --sidebar-menu-color: var(--white);
  --content-bg: var(--white);
  
  /* Layout Dimensions */
  --sidebar-height: calc(100vh - 113px);
  --content-height: calc(100vh - 173px);
  --main-nav-padding: 15px;
}

body{
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  background-color: var(--gray-lighter);
  min-width: 320px;
}
a {
  color: var(--primary-color);
  text-decoration: none;
}
a:hover, a:focus{
  color: var(--primary-dark);
}
.bg-light-gray{
  background-color: var(--gray-lightest);
}
.bg-medium-gray{
  background-color: var(--gray-light);
}
.btn-outline-primary {
  color: var(--primary-color);
  border-color: var(--primary-color);
}
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary:first-child:active,
.btn-outline-primary:focus-visible {
  color: var(--primary-dark) !important;
  border-color: var(--primary-dark-alt) !important;
  background-color: transparent !important;
}
.btn-outline-primary:focus-visible{
  box-shadow: none !important;
}
.btn-primary, .btn-primary:focus {
  background-color: var(--primary-color);
  border-color: var(--primary-dark-alt);
}
.btn-primary:active {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-dark-alt) !important;
}
.btn-primary:hover {
  background-color: var(--primary-dark-alt);
  border-color: var(--primary-dark-alt);
}
#loginCard {
  margin-top: 50px;
  border-top: 4px solid var(--login-card-border-color);
}
.main-nav {
  background-color: var(--main-nav-bg);
  border-bottom: 15px solid var(--main-nav-border-color);
}
.navbar-brand{
	padding: 15px 19px;
}
#sidebar {
  height: var(--sidebar-height);
}
#sidebar-menu a {
  color: var(--sidebar-menu-color);
}
.navbar-toggler{
  margin-right: 20px;
}
#sidebar-menu i{
  width: 25px;
  padding-right: 8px;
}
#content {
  height: var(--content-height);
  overflow-y: auto;
  background: var(--content-bg);
  margin: 30px;
  padding: 25px;
}

.dropdown-toggle i, .dropdown-toggle:after {
  color: var(--dropdown-toggle-color);
}
@media (max-width: 990px){	
  #sidebar{
    display:none;
    position: absolute;
    left: 0px;
    z-index: 10000;
  }
}
@media (min-width: 991px){	
  #sidebar{
    display:block !important;
  }
}
.dropdown-menu{
  z-index: 11000;
}
.navbar-toggler:focus{
  box-shadow: unset;
}
.navbar-toggler{
  border: unset;
}
.page-link, .page-link:hover, .page-link:focus{
  color: var(--white) !important;
}
.pagination .page-link{
  min-width: 100px;
  margin: 0 5px;
} 
.dropdown-item:active{
  background-color: var(--primary-color);
}
.table-centered-content th, td {
  text-align: center;
}
.table-expenses th, .table-contacts th {
  min-width: 120px;
}
.table-customers th {
  min-width: 140px;
}
.table-expenses th:nth-child(3),
.table-expenses th:nth-child(4),
.table-expenses th:nth-child(5) {
  min-width: 100px;
}
.table-expenses th:last-child {
  min-width: 92px;
}
.table-contacts th:last-child, .table-customers th:last-child {
  min-width: 116px;
}
.cabfw i{
  width: 18px;
}
h1 {
  font-size: 32px;
}
