/*
 This file is part of GNU Anastasis
 (C) 2021-2022 Anastasis SARL

 GNU Anastasis is free software; you can redistribute it and/or modify it under the
 terms of the GNU Affero General Public License as published by the Free Software
 Foundation; either version 3, or (at your option) any later version.

 GNU Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
 A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more details.

 You should have received a copy of the GNU Affero General Public License along with
 GNU Anastasis; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
 */

/**
 *
 * @author Sebastian Javier Marchano (sebasjm)
 */

html {
  &.has-aside-left {
    &.has-aside-expanded {
      nav.navbar,
      body {
        padding-left: $aside-width;
      }
    }
    aside.is-placed-left {
      display: block;
    }
  }
}

aside.aside.is-expanded {
  width: $aside-width;

  .menu-list {
    @include icon-with-update-mark($aside-icon-width);

    span.menu-item-label {
      display: inline-block;
    }

    li.is-active {
      ul {
        display: block;
      }
      background-color: $body-background-color;
    }
  }
}

aside.aside {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 40;
  height: 100vh;
  padding: 0;
  box-shadow: $aside-box-shadow;
  background: $aside-background-color;

  .aside-tools {
    display: flex;
    flex-direction: row;
    width: 100%;
    background-color: $aside-tools-background-color;
    color: $aside-tools-color;
    line-height: $navbar-height;
    height: $navbar-height;
    padding-left: $default-padding * 0.5;
    flex: 1;

    .icon {
      margin-right: $default-padding * 0.5;
    }
  }

  .menu-list {
    li {
      a {
        &.has-dropdown-icon {
          position: relative;
          padding-right: $aside-icon-width;

          .dropdown-icon {
            position: absolute;
            top: $size-base * 0.5;
            right: 0;
          }
        }
      }
      ul {
        display: none;
        border-left: 0;
        background-color: darken($base-color, 2.5%);
        padding-left: 0;
        margin: 0 0 $default-padding * 0.5;

        li {
          a {
            padding: $default-padding * 0.5 0 $default-padding * 0.5
              $default-padding * 0.5;
            font-size: $aside-submenu-font-size;

            &.has-icon {
              padding-left: 0;
            }
            &.is-active {
              &:not(:hover) {
                background: transparent;
              }
            }
          }
        }
      }
    }
  }

  .menu-label {
    padding: 0 $default-padding * 0.5;
    margin-top: $default-padding * 0.5;
    margin-bottom: $default-padding * 0.5;
  }
}
