.scrollable-table {
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

    .scrollable-table .table-container {
        overflow-y: auto;
        overflow-x: auto;
    }

    .scrollable-table table {
        width: 100%;
        border-collapse: collapse;
        margin: 0;
    }

    .scrollable-table thead {
        position: sticky;
        top: 0;
        z-index: 10;
    }

.table-container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid #ccc;
    border-radius: 5px;
}
    .table-container table {
        min-width: 500px;
    }

table.table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}
  
  .table thead tr {
    /*background-color: #f3f9ff;*/
    color: #000;
    text-align: left;
  }
  
.table th {
    padding: .8rem 1rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-size: 0.85em;
    /*background-color: #fffcf7;*/
    border-bottom: 1px solid #fffef6;
}
    .table th:nth-child(1) {
        padding-left: 1.5rem;
    }
    .table th:last-child {
        padding-right: 1.5rem;
    }

    .table th a {
        text-decoration:none;
    }
  
  /* Table body cells */
  .table td {
    padding: .8rem 1rem;
    /*border-bottom: 1px solid #dddddd;*/
  }
  
  /* Table body rows */
  .table tbody tr {
    transition: background-color 0.3s ease;
  }
.table td:nth-child(1){
    padding-left:1.5rem;
}
.table td:last-child {
    padding-right: 1.5rem;
}
  
  .table tbody tr:nth-of-type(even) {
    /*background-color: #f9f9f9;*/
  }
  
    .table tbody tr:hover {
        background-color: var(--item-hover-background);
        cursor: default;
    }
  
  .table tbody tr:last-of-type {
    /*border-bottom: 2px solid #ccc;*/
  }
  
  /* Responsive table styling */
  @media screen and (max-width: 600px) {
    .hide-mobile {
        display: none;
    }
    table.table tr {
        border-bottom:none;
    }
    table.table td {
        border-bottom: none;
    }
/*    table.table {
      border: 0;
      box-shadow: none;
    }
    
    table.table caption {
      font-size: 1.3em;
    }
    
    table.table thead {
      border: none;
      clip: rect(0 0 0 0);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute;
      width: 1px;
    }
    
    table.table tr {
      border-bottom: 3px solid #ddd;
      display: block;
      margin-bottom: 0.625em;
      box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
      overflow: hidden;
      border-radius:5px;
      border:1px solid #ccc;
      padding:.5rem;
    }
    
    table.table td {
      border-bottom: none;
      display: block;
      font-size: 1rem;
      text-align: left;
      padding:.2rem .2rem;
      position: relative;
      min-height: 1rem;
      margin-bottom: 0;
    }
    
    table.table td::before {
      content: attr(data-label);
      float: left;
      font-weight: 600;
      text-transform: uppercase;
      padding-right: .5rem;
    }


        table td:empty::after {
            content: "—";
            color: #999;
        }

*/    
    table.table td:last-child {
      border-bottom: 0;
    }
  }
  
  /* Variant: Compact table */
.table-sm td,
.table-sm th {
    padding: .4rem .8rem;
    font-size: 0.8rem;
}
    .table-sm th {
        padding-top: 1.2rem;
        padding-bottom: .8rem;
    }
    .table-sm tr:last-child td {
        padding-bottom: 1.2rem;
    }

  .table-compact td, 
  .table-compact th {
    padding: .3rem .5rem;
    font-size: 0.6rem;
  }
  
  /* Variant: Bordered table */
  .table-bordered td,
  .table-bordered th {
    border: 1px solid #dddddd;
  }
  
  /* Variant: Striped table without hover */
  .table-striped tbody tr:hover {
    background-color: #f0f7ff;
    cursor: default;
  }
  
  /* Table with text alignment options */
  .table .text-center td,
  .text-center th {
    text-align: center;
  }
  
  .table .text-right td,
  .table .text-right th {
    text-align: right;
  }
  
  /* Sortable table headers */
  .table th.sortable {
    cursor: pointer;
    position: relative;
  }
  
  .table th.sortable::after {
    content: "↕";
    position: absolute;
    right: .5rem;
    color: rgba(255, 255, 255, 0.5);
  }
  
  .table th.sortable:hover::after {
    color: #ffffff;
  }
  
  /* Status indicators within tables */
  .table .status-indicator {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: .5rem;
  }
  
  .table .status-active {
    background-color: #2ecc71;
  }
  
  .table .status-pending {
    background-color: #f39c12;
  }
  
  .table .status-inactive {
    background-color: #e74c3c;
  }