@layer components {
  /* Table styling */
  .table {
    background-color: var(--color-canvas);
    border-collapse: collapse;
    border-radius: 0.5rem;
    box-shadow: var(--shadow);
    inline-size: 100%;
    overflow: hidden;
  }

  .table thead {
    background-color: var(--color-gray-50);
  }

  .table th {
    color: var(--color-ink-light);
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    padding: 0.75rem 1rem;
    text-align: start;
    text-transform: uppercase;
  }

  .table td {
    padding: 0.75rem 1rem;
    white-space: nowrap;
  }

  .table tbody tr {
    border-block-start: var(--border);
  }

  .table-row--warning {
    background-color: var(--color-negative-light, #fef2f2);
  }

  /* Responsive table - hide columns on mobile */
  @media (max-width: 639px) {
    .table .hide-mobile {
      display: none;
    }
  }

  /* Name link styling */
  .table__name {
    font-weight: 600;
    text-decoration: none;

    &:hover {
      text-decoration: underline;
    }
  }

  /* Actions cell layout */
  .table__actions {
    display: flex;
    gap: 0.5rem;
  }

  /* Hide on desktop (visible only on mobile) */
  @media (min-width: 640px) {
    .table .hide-desktop {
      display: none;
    }
  }

  /* Chevron link for mobile navigation */
  .table__chevron {
    padding-inline-start: 0;
    text-align: end;

    a {
      align-items: center;
      color: inherit;
      display: inline-flex;
      font-size: 1.5rem;
      justify-content: center;
      line-height: 1;
      min-block-size: 32px;
      min-inline-size: 32px;
      text-decoration: none;
    }
  }
}
