table {
  width: ~"calc(100% + 60px)";
  border-collapse: collapse;
  margin: -30px;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
  table-layout: fixed;

  &.y-scroll {
    overflow-y: auto;
  }

  &.multi-line {
    thead th, tbody td {
      line-height: inherit;
      text-overflow:inherit;
      white-space: inherit;
    }
  }

  &.borders {
    td, th {
      .func-border-end(1px, var(--config-border-fade-super));

      &:last-child{
        border: none;
      }
    }
  }

  thead {
    //box-shadow: 0 0 2px rgba(0,0,0,.25);
    border-bottom: solid 1px var(--config-color-fade-super);
    font-size: 14px;

    // th {
    //   position: sticky;
    //   top: -30px;
    //   z-index: 3;
    // }
  }

  &.small {
    font-size: 14px;
  }

  &.open-end {
    tbody tr:last-child {
      border-bottom: none;
      font-weight: bold;
      background: #f7fbf7;
    }
  }

  &.full {
    tbody td, tbody th {
      vertical-align: top;
      white-space: normal;
      overflow: auto;
      line-height: 24px;
      padding-top: 20px;
      padding-bottom: 20px;
      height: auto;
    }
  }

  .avatar {
    width: 30px;
    height: 30px;
  }

  tr {
    border-bottom: solid 1px var(--config-color-fade-super);

    &:last-child {
      border-bottom: none;
      td:first-child{border-bottom-left-radius: 6px;}
      td:last-child{border-bottom-right-radius: 6px;}
    }
  }

  tr:nth-child(even){
    @media @phones, @tablets{
      background: var(--config-color-background-fade-super);
    }
    @media @desktops{
      td{
        background: var(--config-color-background-fade-super);
      }
    }

  }

  tr.selected {
    background: var(--config-note-background);
    
    td, td span {
      font-weight: 500;
    }
  }

  th {
    text-align: @config-start;
    font-weight: normal;

    i {
      color: var(--config-color-fade);
      font-size: 10px;
      display: inline-block;
      vertical-align: top;
      line-height: 16px;
      padding: 0 3px;
    }
  }

  td, th {
    height: 65px;
    padding: 0 15px;
    line-height: 50px;

    &:first-child {
      .func-padding-start(30px);
    }
  }

  td, th {
    //text-overflow: ellipsis;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  &.vertical {
    @media @phones, @tablets {
      border-top: solid 1px var(--config-color-fade-super);
      display: block;
      overflow: hidden;
      padding-top: 12px;

      .hide {
        display: none;
      }

      thead, tbody, tr, td, th {
        width:100%;
        display: block;
      }

      tr{ position:relative; }

      tr, th {
        padding-top: 12px;
        padding-bottom: 12px;

        &:first-child {
          padding-top: 0;
        }
      }

      td, th {
        padding: 5px 20px!important;
        text-overflow: ellipsis;
        white-space: normal;
        height: 40px;
        line-height: 40px;
        width: ~"calc(100% - 40px)";

        &.col-name{  width: ~"calc(100% - 110px)";}

        &:first-child, &:last-child {
          padding: 0 10px;
        }

        &:last-child {
          padding-bottom: 0;
        }

        p {
          display: inline-block;
          width: ~"calc(100% - 40px)";
        }
      }

      td:not([data-title=""]) {
        &:before {
          content: attr(data-title);
          margin-right: 4px;
          font-weight: 400;
        }
      }

      thead {
        display: none;
      }

      .cell-options-more{
        position:absolute; inset-block-start:0; inset-inline-end:0; width:auto;
      }
    }
  }

  .trim-inner-text {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    @media @desktops{width:100%;}
  }
  .cell-options-more {
    button {
      padding:0 12px; background-color:transparent; color:var(--config-color-fade);
      &:focus-visible{outline:solid 1px var(--config-color-focus);}
    }
    @media @phones, @tablets{}
  }
}