.wp-block-table {
  table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
  }

  &:has(tr > td:nth-child(3)) {
    td {
      min-width: 130px;
    }
  }

  th,
  td {
    border: 0;
  }

  table th:first-child,
  table td:first-child {
    left: 0;
    z-index: 1;
    border-left: 1px solid var(--color-border-subtle, #e0e0e0);
  }

  tbody tr:last-child th,
  tbody tr:last-child td {
    border-bottom: 1px solid var(--color-border-subtle, #e0e0e0);
  }

  tr th:first-child,
  tr td:first-child {
    border-left: 1px solid var(--color-border-subtle, #e0e0e0);
  }

  th {
    padding: 12px;
    gap: 10px;
    flex: 1 0 0;

    border-top: 1px solid var(--color-border-subtle, #e0e0e0);
    border-right: 1px solid var(--color-border-subtle, #e0e0e0);
    background: var(--color-background-brand-subtler, #eef7f7);

    color: var(--color-text-brand, #004343);
    font-size: var(--typography-label-sm-bold-font-size, 14px);
    font-style: normal;
    font-weight: 600;
    line-height: var(--typography-label-sm-bold-line-height, 14px); /* 100% */
    letter-spacing: 0.42px;

    @media (max-width: 576px) {
      padding-block: var(--spacing-xxs);
      padding-inline: var(--spacing-xs);
    }
  }

  td {
    padding: 12px;
    flex: 1 0 0;

    border-top: 1px solid var(--color-border-subtle, #e0e0e0);
    border-right: 1px solid var(--color-border-subtle, #e0e0e0);
    background: var(--color-background-default, #fff);

    color: var(--color-text-default, #222);
    font-size: var(--font-size-20, 14px);
    font-style: normal;
    font-weight: 300;
    line-height: 150%;
    letter-spacing: 0.42px;

    @media (max-width: 576px) {
      padding: var(--spacing-xs);
    }
  }
}
