/* Table — editorial density.
 *
 * Flat wrapper (no bg, no shadow, no radii), hairline separators, no hover
 * bg on rows. Header padding 10/20 vertical/horizontal, data 14–16/20.
 * When header_mono is true (default for editorial), header cells use the
 * monospace family with 10px text, 0.5 letter-spacing, uppercase.
 *
 * Comfortable density is expressed entirely through Tailwind utilities in
 * the ERB; this file only defines the editorial variant's classes. */

.cp-table {
  width: 100%;
  /* Comfortable wrapper is handled in ERB via Tailwind utilities. */
}

.cp-table--editorial {
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}

.cp-table__scroll {
  width: 100%;
  overflow-x: auto;
}

.cp-table__grid {
  width: 100%;
  border-collapse: collapse;
  background: transparent;
}

.cp-table__th {
  font-size: 0.75rem; /* 12px — default */
  font-weight: var(--font-weight-medium, 500);
  color: var(--color-text-secondary);
  border-bottom: 1px solid var(--color-border);
  padding: 10px 20px;
  text-align: left;
  background: transparent;
}

.cp-table__th--pad {
  padding: 10px 20px;
}

.cp-table__th--tight {
  padding: 10px 12px;
}

.cp-table__th--right {
  text-align: right;
}

.cp-table__th--mono {
  font-family: var(--font-family-mono);
  font-size: 0.625rem; /* 10px */
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.cp-table__tr {
  border-top: 1px solid var(--color-border);
}

.cp-table__td {
  font-size: 0.875rem; /* 14px */
  color: var(--color-text-primary);
  padding: 14px 20px;
  text-align: left;
  /* No hover bg — the editorial spec keeps rows calm. */
}

.cp-table__td--pad {
  padding: 14px 20px;
}

.cp-table__td--tight {
  padding: 14px 12px;
}

.cp-table__td--right {
  text-align: right;
}

.cp-table__header,
.cp-table__footer {
  padding: 10px 20px;
  color: var(--color-text-secondary);
}

.cp-table__footer {
  border-top: 1px solid var(--color-border);
}

.cp-table__empty {
  padding: 2rem;
  text-align: center;
  color: var(--color-text-secondary);
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  letter-spacing: 0.3px;
}
