#app {
  background: var(--theme-bg);
}

.common-layout {
  width: 100%;
  height: 100%;
  display: flex;
  background: var(--theme-bg);
  .layout-container {
    width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    .layout-main {
      height: 0;
      flex: 1;
      margin: 16px;
      overflow-x: auto;

      .min-content {
        height: 100%;
        overflow-y: auto;
        flex: 1;
        background: var(--theme-panel-bg);
      }
    }
  }
}

// 侧边栏
.aside-menu {
  flex-shrink: 0;
  height: 100%;
  transition: 400ms;
  display: flex;
  flex-direction: column;
  overflow: hidden;

  &.collapse {
    width: 0 !important;
  }

  .title {
    width: 100%;
    height: 76px;
    display: flex;
    align-items: center;
    justify-content: center;

    h1 {
      flex-shrink: 0;
      font-size: 32px;
      font-family: "YouShe";
      background: linear-gradient(180deg, #88eeff 0%, #5badff 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
  }
}

.aside-menu-inner {
  border-right: none;
  --el-menu-text-color: var(--theme-text-color);
  background-color: transparent;

  .el-sub-menu {
    // background-color: var(--theme-sub-menu-bg);
    .el-sub-menu__title {
      height: 80px;
      font-size: 18px;
      letter-spacing: 2px;
      cursor: pointer;
    }
  }

  .el-menu-item {
    height: 64px;
    padding: 0 0 0 20px !important;
    font-size: 16px;
    letter-spacing: 2px;
    cursor: pointer;
  }

  .el-sub-menu__title:hover,
  .el-menu-item:hover {
    background: transparent;
  }
  .el-menu-item.is-active {
    background: var(--theme-aside-menu-active-bg);
    color: var(--theme-aside-menu-active-text-color) !important;
    position: relative;
    &::after {
      background: var(--theme-aside-menu-active-thumb-bg);
      position: absolute;
      top: 0;
      right: 0;
      content: "";
      width: 4px;
      height: 100%;
    }
  }
  .menu-icon {
    font-size: 16px;
    margin-right: 8px;
  }
}

// 头部
.top-header {
  width: 100%;
  height: 48px;
  flex-shrink: 0;
  background: var(--theme-panel-bg);
  display: flex;
  align-items: center;

  .btn-collapse {
    width: 48px;
    height: 100%;
    border-right: 1px solid var(--theme-border-color);
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    .icon-collapse {
      font-size: 16px;
    }
  }

  .header-content {
    flex: 1;
    height: 100%;
    line-height: 48px;
    padding-left: 24px;
    font-size: 16px;
  }
}
