.table > :not(caption) > * > * {
  padding: 0 !important;
}

.table-container {
  .table {
    table-layout: fixed;
    width: 100%;

    font-size: 14px;
    line-height: 16px;
    letter-spacing: -0.56px;
    margin: 0;

    thead tr th {
      text-align: center;
      height: 44px;
      border-top: 1px solid #aeb7c6;
      border-bottom: 1px solid #d9dfec;
      background-color: #f5f6f8;
      font-weight: 500;
      color: #000;
      padding: 0 !important;
    }

    td {
      padding: 0 !important;
      color: #383d48;
      height: 44px;
      border-bottom: 1px solid #d9dfec;
      text-align: center;
      div {
        height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        span {
          display: -webkit-box;
          -webkit-line-clamp: 2;
          -webkit-box-orient: vertical;
          overflow: hidden;
          text-overflow: ellipsis;
          line-height: 16px;
          text-align: center;
        }
      }
    }
  }
}

.table thead.table-header th {
  border-top: 1px solid #aeb7c6 !important;
  border-bottom: 1px solid #d9dfec !important;
  background-color: #f5f6f8 !important;
  color: #000;
  vertical-align: middle;

  font-size: 14px;
  line-height: 16px;
  letter-spacing: -0.56px;
}

.table-padding-none-container {
  .table-content {
    padding: 0 !important;
  }

  table {
    table-layout: fixed;
    margin-bottom: 0;

    tr > td {
      color: #383d48;

      div {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: normal;
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.56px;
      }
    }

    tr > td.bg-blue {
      background-color: #f0f4fd;
    }
  }

  .table thead.table-header th {
    padding: 0 !important;
    height: 44px !important;
    border-top: 1px solid #aeb7c6 !important;
    border-bottom: 1px solid #d9dfec !important;
    background-color: #f5f6f8 !important;
    color: #000;
    vertical-align: middle;

    font-size: 14px;
    font-weight: 500;
    line-height: 16px;
    letter-spacing: -0.56px;
    text-align: center;
  }

  .table tbody tr td {
    height: 44px;
    padding: 0 !important;
    margin: 0 !important;
    text-align: center;
  }

  .table tbody tr td div {
    display: flex;
    line-height: 16px;
  }

  .text-center-box {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .table-content .custom-checkbox {
    display: flex;
    align-items: center;
  }

  .table-content .custom-checkbox-input {
    margin-right: 8px; /* 체크박스와 텍스트 사이 간격 */
  }

  .table-content .d-flex {
    justify-content: flex-start; /* 텍스트를 왼쪽 정렬 */
  }
}
