
  :root {
    --navbarHeight: 57px;
    --sidebarWidth: 280px;
  }

  body {
    padding-top: var(--navbarHeight);
  }

  @media ( min-width: 1200px ) {
    body {
      padding-left: var(--sidebarWidth);
    }
  }

  /* Sidebar Offcanvas */

  .sidebar-offcanvas {
    visibility: visible;
    overflow-y: auto;
    position: fixed;
    display: block;
    z-index: 1009;
    width: 100%;
    left: 0;

    top: var(--navbarHeight);
    max-width: var(--sidebarWidth);
    height: calc(100vh - var(--navbarHeight));

    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;

    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  @media ( min-width: 1200px ) {
    .sidebar-offcanvas {
      -webkit-transform: translateX(0);
      -moz-transform: translateX(0);
      -ms-transform: translateX(0);
      -o-transform: translateX(0);
      transform: translateX(0);
    }
  }

  .sidebar-offcanvas.show {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }

  /* Screen Overlay */

  .screen-overlay {
    visibility: hidden;
    position: fixed;
    z-index: 1008;
    height: 100vh;
    width: 100%;
    opacity: 0;
    left: 0;
    top: 0;

    background-color: rgba(34, 34, 34, 0.6);
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
  }

  .screen-overlay.show {
    visibility: visible;
    opacity: 1;
  }

