/* GLOBAL RESET & BASE STYLES */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    background-color: #2c2c2c;
    color: white;
    font-family: system-ui, sans-serif;
  }
  
  .page-wrapper {
    display: grid;
    grid-template-rows: auto 1fr auto; /* nav, content, footer */
    min-height: 100vh;
  }
  
  /* NAVIGATION BAR */
  nav {
    background-color: #1c1c1c;
  }
  
  /* MAIN CONTENT AREA */
  .main-content {
    background-color: #2c2c2c;
    padding: 1rem;
    overflow-y: auto;
  }
  
  /* FOOTER */
  footer {
    background-color: #1c1c1c;
    color: white;
    text-align: center;
    padding: 10px 0;
  }
  
  /* TABLE WRAPPER */
  .table-container {
    max-height: calc(100vh - 240px); /* Adjust based on nav/footer height */
    overflow-y: auto;
    overflow-x: auto;
    border: 1px solid #555;
    border-radius: 6px;
  }
  
  /* TABLE */
  .data-table {
    width: 100%;
    min-width: 600px;
    border-collapse: separate;
    border-spacing: 0;
    background-color: #3c3c3c;
    color: white;
    font-size: 0.875rem;
  }
  
  .data-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background-color: crimson;
    color: white;
    text-align: left;
    padding: 0.5rem;
    border-bottom: 2px solid #222;
  }
  
  .data-table td {
    padding: 0.5rem;
    border: 1px solid #555;
  }
  
  /* TOOLTIP ICON */
  .info-icon {
    color: crimson;
    font-size: 1.2rem;
    transition: color 0.2s ease;
  }
  
  .info-icon:hover {
    color: #ff4d4d; /* lighter crimson/red on hover */
  }
  
  /* RESPONSIVE TWEAKS */
  @media (max-width: 768px) {
    .data-table {
      font-size: 0.75rem;
      min-width: unset;
    }
  
    .main-content {
      padding: 0.5rem;
    }
  
    .navbar-brand {
      font-size: 1rem;
    }
  }
  