.el-admin-layout {
  display: grid;
  grid-template-columns: min-content 1fr;
  grid-template-rows: min-content min-content 1fr;
  height: 100%;
  width: 100%;
  overflow: hidden;

  > header {
    grid-column-start: 1;
    grid-column-end: 3;
  }

  > nav {
    grid-column: 2 / 3;
  }

  > aside {
    display: flex;
    grid-row-start: 2;
    grid-row-end: 4;
  }

  > main {
    grid-area: 3 / 2 / 4 / 3;
  }

  // 左右结构
  &.left-right {
    > header {
      grid-column-start: 2;
    }

    > aside {
      grid-row-start: 1;

      // 左右结构时，侧边栏z-index需大于顶栏
      // 上下结构时，侧边栏z-index需小于顶栏
      z-index: $header-z-index + 1;
    }
  }
}
