html,
body {
      height: 100%;
      font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
      background: #fafafa;
}

.wrapper {
      display: flex;
      width: 100%;
      align-items: stretch;
      min-height: 100vh;
}

#sidebar {
      min-width: 250px;
      max-width: 250px;
      background: #003366;
      color: #fff;
      transition: all 0.3s;
      position: fixed;
      height: 100vh;
      overflow-y: auto;
}

#sidebar.active {
      margin-left: -250px;
}

#sidebar .sidebar-header {
      padding: 20px;
      background: #002855;
}

#sidebar ul.components {
      padding: 20px 0;
      border-bottom: 1px solid #47748b;
}

#sidebar ul p {
      color: #fff;
      padding: 10px;
}

#sidebar ul li a {
      padding: 10px;
      font-size: 1.1em;
      display: block;
      color: #fff;
      text-decoration: none;
}

#sidebar ul li a:hover {
      color: #003366;
      background: #fff;
}

#sidebar ul li.active > a,
a[aria-expanded='true'] {
      color: #fff;
      background: #002855;
}

#content {
      width: 100%;
      padding: 20px;
      min-height: 100vh;
      transition: all 0.3s;
      margin-left: 250px;
}

.navbar {
      padding: 15px 10px;
      background: #fff;
      border: none;
      border-radius: 0;
      margin-bottom: 40px;
      box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
}

.navbar-btn {
      box-shadow: none;
      outline: none !important;
      border: none;
}

.line {
      width: 100%;
      height: 1px;
      border-bottom: 1px dashed #ddd;
      margin: 40px 0;
}

.logout,
.login {
      background: #002855;
      color: #fff;
      padding: 10px;
      text-align: center;
      margin-top: 20px;
      display: block;
}

.logout:hover,
.login:hover {
      background: #001f3f;
}

.footer {
      position: fixed;
      bottom: 0;
      width: calc(100% - 250px);
      white-space: nowrap;
      line-height: 60px;
      background-color: #f8f9fa;
      margin-left: 250px;
      transition: all 0.3s;
}

@media (max-width: 768px) {
      #sidebar {
            margin-left: -250px;
      }
      #sidebar.active {
            margin-left: 0;
      }
      #content {
            width: 100%;
            margin-left: 0;
      }
      #content.active {
            margin-left: 250px;
      }
      #sidebarCollapse span {
            display: none;
      }
      .footer {
            width: 100%;
            margin-left: 0;
      }
      .footer.active {
            width: calc(100% - 250px);
            margin-left: 250px;
      }
}

@media (min-width: 769px) {
      .navbar {
            display: none;
      }
}

.fas {
      margin-right: 10px;
}
