/*
 *  side-push-panel.scss
 * -----------------------------------------------
*/
.side-push-panel {
  overflow-x: hidden;
  &.fullwidth-page {
    #wrapper {
      right: 0;
      position: relative;
    }
    header {
      .header-nav-wrapper.tm-sticky-menu {
        .container {
          right: 0;
        }
      }
    }
    &.side-panel-left {
      #wrapper {
        left: 0;
        right: auto;
      }
      header {
        .header-nav-wrapper.tm-sticky-menu {
          .container {
            left: 0;
            right: auto;
          }
        }
      }
    }
    &.side-panel-open {
      #wrapper {
        right: 480px;
      }
      header {
        .header-nav-wrapper.tm-sticky-menu {
          .container {
            right: 480px;
          }
        }
      }
    }
    &.side-panel-left.side-panel-open {
      #wrapper {
        left: 480px;
        right: auto;
      }
      header {
        .header-nav-wrapper.tm-sticky-menu {
          .container {
            left: 480px;
            right: auto;
          }
        }
      }
    }
  }

  /* -------- Has Side Panel ---------- */
  &.has-side-panel .menuzord .showhide {
    float: left;
  }
}



/* -------- Body Overlay ---------- */
.has-side-panel {
  .side-panel-body-overlay {
    background-color: rgba(#111, 0.8);
    height: calc(100vh);
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: $zindex-side-push-panel-side-panel-open-body-overlay;
    @include transition(all .5s ease);
  }
}
.has-side-panel.side-panel-open {
  .side-panel-body-overlay {
    opacity: 1;
    pointer-events: auto;
  }
}

.side-panel-open:not(.device-xxs):not(.device-xs):not(.device-sm) .side-panel-body-overlay:hover { 
  cursor: url('../images/close.png') 15 15, default;
}

/* -------- Side Panel ---------- */
.side-panel-container {
  -webkit-backface-visibility: hidden;
  background-color: $white-base;
  height: calc(100vh);
  overflow: hidden;
  position: fixed;
  right: -480px;
  top: 0;
  text-align: left;
  width: 480px;
  z-index: $zindex-side-panel;
  @include transition(all .4s ease);
  @include media-breakpoint-down(lg) {
    width: 300px;
  }
  
  ul {
    padding-left: 0;
  }
  .side-panel-wrap {
    bottom: 0;
    height: 100%;
    left: 0;
    overflow: auto;
    padding: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
  .widget.widget-side-push-panel {
    width: 100%;
    .textwidget {
      color: $black-333;
    }
    &.widget-horizontal-row {
      margin-top: 0;
      margin-bottom: 0;
    }
    &.widget-image-widget {
      .thumb {
        margin-bottom: 20px;
      }
    }
  }
}
body.rtl .side-panel-container {
  left: auto !important; // it will become right auto in rtl
}
.side-panel-open .side-panel-container { right: 0; }
.side-panel-left .side-panel-container {
  left: -480px;
  right: auto;
}
.side-panel-left.side-panel-open .side-panel-container {
  left: 0;
  right: auto;
}
.device-touch .side-panel-container .side-panel-wrap { overflow-y: scroll; }

/* -------- Side-Panel-Trigger And Close ---------- */
.side-panel-trigger {
  cursor: pointer;
  display: block;
  z-index: $zindex-side-panel-trigger;
  @media (max-width: $ele-breakpoint-tablet-max) {
  }
}
.side-panel-trigger-close {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  .side-panel-trigger-icon {
    font-size: 18px;
    color: $black-333;
    margin-top: 20px;
    margin-right: 15px;
    background: #eee;
    padding: 13px 16px 14px 16px;
    border-radius: 30px;
    @include transition(all .4s ease);
    &:hover {
      color: var(--text-color-bg-theme-color1);
      background: var(--theme-color1);
    }
  }
}

/* -------- Transition ---------- */
.side-push-panel.fullwidth-page #wrapper,
.side-push-panel.fullwidth-page header .header-nav-wrapper.tm-sticky-menu .container {
  @include transition(all .4s ease);
}

/* Hamburger Menu */
.hamburger-box {
  display: inline-block;
  height: 20px;
  position: relative;
  width: 40px;
  padding: 12px 15px;

  .hamburger-inner {
    margin-left: 3px;
    top: 16px;
  }
  .hamburger-inner,
  .hamburger-inner:after,
  .hamburger-inner:before {
    background-color: #444;
    border-radius: 4px;
    height: 2px;
    position: absolute;
    width: 24px;
    @include transition(all .15s ease);
  }
  .hamburger-inner:after,
  .hamburger-inner:before{
    display:block;
    content:"";
  }
  .hamburger-inner:before{
    top: -9px;
  }
  .hamburger-inner:after{
    bottom: -9px;
  }
  .hamburger-inner {
    width: 16px;
    &:after {
      width: 24px;
    }
    &:before {
      width: 24px;
    }
  }
  &:hover {
    .hamburger-inner,
    .hamburger-inner:after,
    .hamburger-inner:before {
      height: 2px;
      background-color: #333;
    }
    .hamburger-inner {
      width: 24px;
      &:after {
        width: 16px;
      }
      &:before {
        width: 16px;
      }
    }
  }
}