.giftflow-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  font-size: 15px;
  overflow: hidden;
  border: 1px solid #f0f0f0;
  margin-bottom: 0;

  th, td {
    padding: 1em;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: top;
    background: none;
    font-weight: normal;
    border: none;
  }

  th {
    background: #f8fafc;
    font-weight: 600;
    font-size: 15px;
  }

  tr:last-child td {
    border-bottom: none;
  }

  tbody tr {
    transition: background 0.15s;
    &:hover {
      background: #f3f4f6;
    }
  }

  tbody td {
    font-size: .9em;
  }

  // Zebra striping
  tbody tr:nth-child(even) {
    background: #fcfcfc;
  }

  // Responsive styles
  @media (max-width: 900px) {
    font-size: 14px;
    th, td {
      padding: 12px 8px;
    }
  }

  @media (max-width: 600px) {
    display: block;
    width: 100%;
    overflow-x: auto;
    border-radius: 0;

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

    th, td {
      display: block;
      width: 100%;
      box-sizing: border-box;
      padding: 12px 10px;
      text-align: left;
      border-bottom: 1px solid #f0f0f0;
    }

    th {
      background: #f8fafc;
      border-bottom: 1px solid #e5e7eb;
    }

    tr {
      margin-bottom: 10px;
      border-radius: 4px;
      background: #fff;
    }

    tbody tr:nth-child(even) {
      background: #fafbfc;
    }
  }
}
