/* el-alert */
.el-alert {
  border: 1px solid;
}

/* 当前页面最大化 css */
.main-maximize {
  .aside-split,
  .el-aside,
  .el-header,
  .el-footer,
  .tabs-box {
    display: none !important;
  }
}

/* mask image */
.mask-image {
  padding-right: 50px;
  mask-image: linear-gradient(90deg, #000000 0%, #000000 calc(100% - 50px), transparent);
}

/* custom card */
.card {
  box-sizing: border-box;
  padding: 10px;
  padding-top: 5px;
  overflow-x: hidden;
  background-color: var(--el-bg-color);
}

/* ProTable 不需要 card 样式（在组件内使用 ProTable 会使用到） */
.no-card {
  .card {
    padding: 0;
    background-color: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
  }
  .table-search {
    padding: 18px 0 0 !important;
    margin-bottom: 0 !important;
  }
}

/* content-box (常用内容盒子) */
.content-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  .text {
    margin: 20px 0 30px;
    font-size: 23px;
    font-weight: bold;
    color: var(--el-text-color-regular);
  }
  .el-descriptions {
    width: 100%;
    padding: 40px 0 0;
    .el-descriptions__title {
      font-size: 18px;
    }
    .el-descriptions__label {
      width: 200px;
    }
  }
}

/* main-box (树形表格 treeFilter 页面会使用，左右布局 flex) */
.main-box {
  display: flex;
  width: 100%;
  height: 100%;
  .table-box {
    overflow: hidden;
  }
}

/* proTable */
.table-box,
.table-main {
  display: flex;
  flex: 1;
  flex-direction: column;
  width: 100%;

  // table-search 表格搜索样式
  .table-search {
    padding: 18px 18px 0;
    .el-form {
      .el-form-item__content > * {
        width: 100%;
      }

      // 去除时间选择器上下 padding
      .el-range-editor.el-input__wrapper {
        padding: 0 10px;
      }
    }
    .operation {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      // margin-bottom: 10px;
    }
  }

  // 表格 header 样式
  .table-header {
    .header-button-lf,
    .header-button-ri {
      display: flex;
      flex-wrap: wrap;
      gap: 15px 12px;
      margin-bottom: 15px;
      .el-button:not(.el-input .el-button) {
        margin-left: 0;
      }
    }
    .header-button-lf {
      float: left;
    }
    .header-button-ri {
      float: right;
    }
  }

  // el-table 表格样式
  .el-table {
    flex: 1;

    // 修复 safari 浏览器表格错位 https://github.com/HalseySpicy/Geeker-Admin/issues/83
    table {
      width: 100%;
    }
    .el-table__header th {
      height: 45px;
      font-size: 15px;
      font-weight: bold;
      color: var(--el-text-color-primary);
      background: var(--el-fill-color-light);
    }
    .el-table__row {
      height: 45px;
      font-size: 14px;
      .move {
        cursor: move;
        .el-icon {
          cursor: move;
        }
      }
    }

    // 设置 el-table 中 header 文字不换行，并省略
    .el-table__header .el-table__cell > .cell {
      // white-space: nowrap;
      white-space: wrap;
    }

    // 解决表格数据为空时样式不居中问题(仅在element-plus中)
    .el-table__empty-block {
      position: absolute;
      .table-empty {
        line-height: 30px;
        img {
          display: inline-flex;
        }
      }
    }

    // table 中 image 图片样式
    .table-image {
      width: 50px;
      height: 50px;
      border-radius: 50%;
    }
  }

  // 表格 pagination 样式
  .el-pagination {
    display: flex;
    justify-content: flex-end;
    margin-top: 20px;
  }
}

/* el-table 组件大小 */
.el-table--small {
  .el-table__header th {
    height: 40px !important;
    font-size: 14px !important;
  }
  .el-table__row {
    height: 40px !important;
    font-size: 13px !important;
  }
}
.el-table--large {
  .el-table__header th {
    height: 50px !important;
    font-size: 16px !important;
  }
  .el-table__row {
    height: 40px !important;
    font-size: 15px !important;
  }
}

/* el-drawer */
.el-drawer {
  .el-drawer__header {
    padding: 16px 20px;
    margin-bottom: 0;
    border-bottom: 1px solid var(--el-border-color-lighter);
    span {
      font-size: 17px;
      line-height: 17px;
      color: var(--el-text-color-primary) !important;
    }
  }
  .el-drawer__footer {
    border-top: 1px solid var(--el-border-color-lighter);
  }

  // select 样式
  .el-select {
    width: 100%;
  }

  // drawer-form 中存在两列 form-item 样式
  .drawer-multiColumn-form {
    display: flex;
    flex-wrap: wrap;
    .el-form-item {
      width: 47%;
      &:nth-child(2n-1) {
        margin-right: 5%;
      }
    }
  }
}

/* el-dialog */
.el-dialog {
  padding: 0;
  .el-dialog__header {
    padding: 15px 20px;
    margin: 0;
    border-bottom: 1px solid var(--el-border-color-lighter);
    .el-dialog__title {
      font-size: 17px;
    }
  }
  .el-dialog__body,
  .el-dialog__footer {
    padding: 15px 20px;
  }
}
.vxe-tabs .vxe-tabs-header--item-inner,
.vxe-tabs .vxe-tabs-header--wrapper {
  height: 40px !important;
  font-size: 14px;
}
.vxe-header--row {
  .vxe-cell {
    text-align: center !important;
  }
  .vxe-cell--title {
    font-size: 12px !important;
    color: #909399;
  }
}
.vxe-body--row.row--current,
.vxe-body--row.row--hover {
  background-color: var(--el-color-primary-light-9) !important;
}
.vxe-table--render-default .vxe-body--column,
.vxe-table--render-default .vxe-footer--column,
.vxe-table--render-default .vxe-header--column {
  line-height: 15px !important;
  -webkit-user-select:none;
  -ms-user-select:none;
  user-select:none;
  font-size: 12px;
}
.vxe-table--render-default.size--small .vxe-header--column.col--ellipsis {
  height: 40px !important;
}
.vxe-table--render-default.size--small .vxe-body--column:not(.col--ellipsis) {
  padding: 0 !important;
}
/*vxe-table 自定义行高 */
.vxe-table .vxe-body--column.col--ellipsis {
  height: 40px;
}
.vxe-table .vxe-body--column:not(.col--ellipsis),
.vxe-table .vxe-footer--column:not(.col--ellipsis),
.vxe-table .vxe-header--column:not(.col--ellipsis) {
  height: 40px;
}
.el-button {
  padding: 0px 10px !important;
  font-size: 13px !important;
  height: 30px !important;
}
td {
  line-height: 22px !important;
}
.public-header {
  position: relative;
  line-height: 15px;
  font-size: 14px;
  padding-left: 10px;
  margin-top: 8px;
  &::after {
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 100%;
    background: var(--el-color-primary);
    display: block;
    content: '';
  }
}
.el-statistic__content,
.el-statistic__head {
  text-align: center;
}
.vxe-table--tooltip-wrapper {
  z-index: 99999999 !important;
}
.vxe-table--header-wrapper {
  background: #fff !important;
}
.btn-grp {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
  height: 50px;
  .el-dropdown-link {
    color: #234ca3 !important;
    margin-right: 10px;
  }
  .el-icon--right {
    color: #234ca3;
  }
}
.style-lable {
  line-height: 1.15;
  margin: 10px;
  border-radius: 5px;
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding-right: 15px;
  align-items: center;
  .item_warp {
    line-height: 1.15;
    width: 30%;
    height: 90px;
    display: flex;
    border-radius: 5px;
    box-shadow: 2px 2px 4px 2px rgba(0,0,0,.1);
    padding: 5px 10px;
    align-items: center;
  }
  .img_warp {
    line-height: 1.15;
    display: inline-block;
    width: 55px;
    height: 100%;
    margin-right: 10px;
    position: relative;
    img {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
    }
  }
  .title_warp {
    line-height: 1.15;
    display: inline-block;
    height: 50px;
    width: 70%;
    vertical-align: top;
  }
  .items {
    width: 100%;
    height: 50%;
    font-size: 14px;
    color: #aaa;
    line-height: 25px;
  }
  .items1 {
    font-size: 21px;
    color: #333;
  }
}
.vxe-grid {
  --vxe-ui-table-border-color: #ebeef5;
}
body {
  --el-color-primary: #234ca3;
  // --el-color-primary-light-1: #5973ad;
  // --el-color-primary-light-2: #5973ad;
  --el-color-primary-light-3: #285ecf;
  // --el-color-primary-light-4: #5973ad;
  --el-color-primary-light-5: #7285b0;
  // --el-color-primary-light-6: #5973ad;
  // --el-color-primary-light-7: #5973ad;
  // --el-color-primary-light-8: #5973ad;
  // --el-color-primary-light-9: #f6f8ff;
  --vxe-ui-font-primary-color: #234ca3;
}
.text-blue-400 {
  color: #234ca3 !important;
}
.el-form-item__label {
  display: flex !important;
  align-items: center !important;
  & > div {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  .el-space__item {
    line-height: 16px;
  }
}
.line-input,
.line-input.is-disabled {
  .el-input__wrapper {
    box-shadow: none !important;
    border-bottom: 1px solid rgb(204, 204, 204) !important;
    background-color: transparent !important;
  }
}
.el-radio {
  margin-right: 5px !important;
}
