/* snps/_table_row — one SNP row in the table view */
.snp-table-row {
  font-size: var(--font-size-14);
  line-height: 1.25rem;
  color: var(--text-primary);

  &:hover { background-color: var(--background-hover); }

  &.snp-table-row--critical,
  &.snp-table-row--warning,
  &.snp-table-row--caution {
    border-left-width: 4px; /* Note: bespoke accent stripe */
    border-left-style: solid;
  }
  &.snp-table-row--critical,
  &.snp-table-row--warning { border-left-color: var(--border-default); }
  &.snp-table-row--caution { border-left-color: var(--border-default); }
}

.snp-table-cell,
.snp-table-cell-gene,
.snp-table-cell-desc,
.snp-table-cell-tags,
.snp-table-cell-evidence {
  padding-inline: var(--spacing-16);
  padding-block: var(--spacing-12);
}

.snp-table-rsid {
  font-family: var(--font-family-mono);
  font-size: var(--font-size-14);
  line-height: 1.25rem;
  font-weight: var(--font-weight-500);
  color: var(--text-primary);

  &:hover { color: var(--text-hover); }
}

.snp-table-variant-name {
  color: var(--text-tertiary);
  font-size: var(--font-size-12);
  line-height: 1rem;
}

.snp-table-cell-desc {
  color: var(--text-secondary);
  display: none;
  max-width: 20rem; /* Note: bespoke value */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;

  @media (min-width: 48rem) { display: table-cell; }
}

.snp-table-category-link {
  font-size: var(--font-size-12);
  line-height: 1rem;
  background-color: var(--background-surface-2);
  padding-inline: var(--spacing-8);
  padding-block: var(--spacing-4);
  border-radius: var(--corner-radius-sm);

  &:hover { background-color: var(--background-hover); }
}

.snp-table-cell-tags {
  display: none;

  @media (min-width: 64rem) { display: table-cell; }
}

.snp-table-tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-4);
}

.snp-table-tag {
  font-size: var(--font-size-12);
  line-height: 1rem;
  padding-inline: var(--spacing-8);
  padding-block: var(--spacing-2);
  border-radius: var(--corner-radius-full);
  background-color: var(--background-surface-2);
  color: var(--text-primary);

  &:hover { background-color: var(--background-surface-2); }
}

.snp-table-cell-evidence {
  display: none;

  @media (min-width: 80rem) { display: table-cell; }
}

.snp-table-geno-cell {
  display: flex;
  align-items: center;
  gap: var(--spacing-8);
}

.snp-table-alleles {
  font-family: var(--font-family-mono);
  font-weight: var(--font-weight-700);
}

.snp-table-empty-cell {
  font-size: var(--font-size-12);
  line-height: 1rem;
  color: var(--text-tertiary);
}
