/* Invoice line items table column widths */
.invoice-line-items th:nth-child(1),
.invoice-line-items td:nth-child(1) {
  width: 100px;  /* Date - minimal */
  white-space: nowrap;
}

.invoice-line-items th:nth-child(2),
.invoice-line-items td:nth-child(2) {
  width: 80px;  /* Code - minimal */
  white-space: nowrap;
}

.invoice-line-items th:nth-child(3),
.invoice-line-items td:nth-child(3) {
  width: auto;  /* Description - takes remaining space */
}

.invoice-line-items th:nth-child(4),
.invoice-line-items td:nth-child(4) {
  width: 100px;  /* Amount */
  white-space: nowrap;
}

/* Invoice balance row styling */
.invoice-balance-row.is-unpaid {
  background-color: var(--bulma-warning);
}

.invoice-balance-row.is-unpaid td {
  color: var(--bulma-warning-invert);
}

.invoice-balance-row.is-paid {
  background-color: #28a745;
}

.invoice-balance-row.is-paid td {
  color: #fff;
}

/* Table with only bottom border on rows (not full grid) */
.box .table-container table.table.table-with-bottom-border {
  border-collapse: collapse;
}

.box .table-container table.table.table-with-bottom-border thead tr th {
  border-bottom: 2px solid var(--bulma-border);
}

.box .table-container table.table.table-with-bottom-border tbody tr td {
  border-bottom: 1px solid var(--bulma-border);
}

/* Payment card styling */
.payment-card {
  border: 1px solid var(--bulma-border);
  border-radius: var(--bulma-radius);
  padding: 1rem;
  background-color: var(--bulma-scheme-main-bis);
}
