body {
  display: flex;
  flex-direction: column-reverse;
  height: 100vh;
  background-color: #224abe;
  background-image: linear-gradient(0, #224abe, #4e73df);
}

body>.body {
  flex: 1;
  overflow-y: auto;
}

body>.footer {
  color: #fff;
  text-align: center;
}

.page-wrapper {
  display: flex;
  min-height: 100%
}

.sidebar {
  width: 6rem;
}

.sidebar.toggled {
  display: none;
}

.sidebar .sidebar-brand {
  height: 4.375rem;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}

.sidebar .sidebar-brand .sidebar-brand-icon {
  font-size: 2em;
  transform: rotate(-15deg);
}

.sidebar .sidebar-brand .sidebar-brand-text {
  display: none;
}

.sidebar .sidebar-link {
  display: block;
  width: 100%;
  border: none;
  text-decoration: none;
  color: #fff;
  background-color: transparent;
  opacity: 0.8;
  padding: 0.75rem;
  text-align: center;
  font-size: 0.65rem;
}

.sidebar .sidebar-link i {
  opacity: 0.3;
  width: 100%;
  text-align: center;
  font-size: 0.85rem;
}

.sidebar .sidebar-link i.collapse-indicator {
  display: none;
}

.sidebar .sidebar-link:hover,
.sidebar .sidebar-link:hover i,
.sidebar .sidebar-link[data-bs-toggle='collapse']:not(.collapsed),
.sidebar .sidebar-link[data-bs-toggle='collapse']:not(.collapsed) i {
  opacity: 1;
}

.sidebar .sidebar-item {
  position: relative;
}

.sidebar .sidebar-item .collapsing {
  transition-duration: 0s;
}

.sidebar .sidebar-item .collapse-inner {
  border-radius: 0.375rem;
  padding: 0.5rem;
  font-size: 0.85rem;
  background-color: #fff;
  color: #3a3b45;
  position: absolute;
  top: 0.5rem;
  left: calc(100% - 0.5rem);
  z-index: 1;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.sidebar .sidebar-item .collapse-inner .collapse-header {
  display: block;
  padding: 0.25rem 0.5rem;
  font-size: 0.65rem;
  font-weight: bold;
  color: #b7b9cc;
  text-transform: uppercase;
  white-space: nowrap;
}

.sidebar .sidebar-item .collapse-inner .collapse-item {
  display: block;
  border-radius: 0.375rem;
  padding: 0.5rem;
  color: #3a3b45;
  text-decoration: none;
  white-space: nowrap;
}

.sidebar .sidebar-item .collapse-inner .collapse-item:hover {
  background-color: #eaecf4;
}

.sidebar .sidebar-divider {
  margin: 0 0.75rem;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.15);
}

.sidebar-toggle,
.avatar {
  width: 2.5rem;
  height: 2.5rem;
  border: none;
  border-radius: 50%;
}

.sidebar .sidebar-toggle {
  display: none;
  background-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.5);
}

.sidebar .sidebar-toggle:hover {
  background-color: rgba(255, 255, 255, 0.25);
}

.sidebar.toggled .sidebar-toggle i {
  transform: scaleX(-1);
}

.content-wrapper {
  flex: 1;
  background-color: #f8f9fc;
  overflow-x: auto;
}

.topbar {
  display: flex;
  padding: 1rem;
  background-color: #fff;
}

.topbar .sidebar-toggle {
  margin-right: 0.5rem;
  background-color: transparent;
}

.topbar .sidebar-toggle:hover {
  background-color: #eaecf4;
}

.topbar .topbar-search {
  width: 50%;
  max-width: 25rem;
}

.topbar .topbar-search input {
  font-size: 0.85rem;
}

.topbar .avatar {
  background-color: #4e73df;
  color: #fff;
  font-size: 1.125rem;
  text-transform: uppercase;
  display: flex;
  justify-content: center;
  align-items: center;
}

.topbar .avatar:hover {
  background-color: #224abe;
}

.dropdown-item {
  font-size: 0.85rem;
  cursor: pointer;
  user-select: none;
}

.container-fluid {
  padding: 1rem;
}

@media (min-width: 768px) {
  .sidebar.toggled {
    display: block;
  }
  .sidebar:not(.toggled) {
    width: 14rem;
  }
  .sidebar:not(.toggled) .sidebar-link {
    font-size: 0.85rem;
    white-space: nowrap;
    display: flex;
    align-items: center;
  }
  .sidebar:not(.toggled) .sidebar-link i {
    width: 1.25rem;
    margin-right: 0.25rem;
  }
  .sidebar:not(.toggled) .sidebar-link i.collapse-indicator {
    display: block;
    font-size: 1rem;
    margin-right: 0;
    margin-left: auto;
    transition: transform 0.2s;
  }
  .sidebar:not(.toggled) .sidebar-link:not(.collapsed) i.collapse-indicator {
    transform: rotate(90deg);
  }
  .sidebar:not(.toggled) .sidebar-item .collapsing {
    transition-duration: 0.2s;
  }
  .sidebar:not(.toggled) .sidebar-item .collapse-inner {
    position: static;
    margin: 0 1rem;
    z-index: auto;
    box-shadow: none;
  }
  .sidebar:not(.toggled) .sidebar-brand .sidebar-brand-text {
    display: inline;
  }
  .sidebar .sidebar-toggle {
    display: inline;
  }
  .topbar .sidebar-toggle {
    display: none;
  }
}

/* SIDE BAR 07/26 */
.sidebar {
  display: block; /* Default to visible on larger screens */
}

/* Media query to hide sidebar on mobile devices */
@media (max-width: 768px) {
  .sidebar {
    display: none; /* Hide sidebar by default on mobile devices */
  }
}

.sidebar-visible {
  display: block; /* Show sidebar when the class is added */
}

.sidebar-toggle {
  cursor: pointer;
}
/* END SIDE BAR 07/26 */

@keyframes growIn {
  0% {
    transform: scale(.9);
    opacity: 0;
  }
  100% {
    transform: none;
    opacity: 1;
  }
}

.sidebar .sidebar-item .collapse-inner,
.animated--grow-in {
  animation-name: growIn;
  animation-duration: 0.2s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.animated--fade-in {
  animation-name: fadeIn;
  animation-duration: 0.2s;
}

@media (prefers-reduced-motion) {
  .sidebar .sidebar-item .collapse-inner,
  .animated--grow-in {
    animation-name: fadeIn;
  }
}
