table.list {
  width: 100%;
  margin-bottom: @baseLineHeight;
  // Cells
  th,
  td {
    padding: 8px;
    line-height: @baseLineHeight;
    text-align: left;
    vertical-align: top;
    border-top: 1px solid #ddd;
  }
  th {
    font-weight: bold;
    #gradient > .vertical(@grayLighter, @grayLight);
    &.tight {
      width: 1%;
    }
  }
  &.table-colorized {
    th {
      #gradient > .vertical(@blue, @blueDark);
      color: @white;
    }
  }
  // Bottom align for column headings
  thead th {
    vertical-align: bottom;
  }
  // Remove top border from thead by default
  thead:first-child tr th,
  thead:first-child tr td {
    border-top: 0;
  }
  // Account for multiple tbody instances
  tbody + tbody {
    border-top: 2px solid #ddd;
  }
}

table.list {
  border: 1px solid #ddd;
  border-left-color: transparent;
  border-right-color: transparent;
  border-top-color: transparent;
  border-collapse: separate; // Done so we can round those corners!
  *border-collapse: collapsed; // IE7 can't round corners anyway
  .border-radius(4px);
  th + th,
  td + td,
  th + td,
  td + th {
    border-left: 1px solid transparent;
  }
  // Prevent a double border
  thead:first-child tr:first-child th,
  tbody:first-child tr:first-child th,
  tbody:first-child tr:first-child td {
    border-top: 0;
  }
  // For first th or td in the first row in the first thead or tbody
  thead:first-child tr:first-child th:first-child,
  tbody:first-child tr:first-child td:first-child {
    .border-radius(4px 0 0 0);
  }
  thead:first-child tr:first-child th:last-child,
  tbody:first-child tr:first-child td:last-child {
    .border-radius(0 4px 0 0);
  }
  // For first th or td in the first row in the first thead or tbody
  thead:last-child tr:last-child th:first-child,
  tbody:last-child tr:last-child td:first-child {
    .border-radius(0 0 0 4px);
  }
  thead:last-child tr:last-child th:last-child,
  tbody:last-child tr:last-child td:last-child {
    .border-radius(0 0 4px 0);
  }
}

table.list {
  tbody {
    tr:nth-child(even) td,
    tr:nth-child(even) th {
      background-color: #f9f9f9;
    }
    td, th {
      border-color: 0 none;
    }
  }
  &.table-colorized {
    td, th {
      border-top-color: @grayLighter;
      &:nth-child(even) {
        background-color: fadeout(@blue, 93%);
      }
    }
  }
}

table.list {
  tbody tr:hover td, tbody tr:hover th {
    background-color: #f5f5f5;
  }
}
