.document .record-choice-table :is(th, td):has(input[type="checkbox"]) {
  width: auto !important;
}

.document .document-form-checkbox {
  box-sizing: border-box;
  width: 3mm;
  height: 3mm;
  margin: 0;
  appearance: none;
  border: var(--document-stroke-hairline) solid var(--document-border-bold);
  background: var(--document-bg-minimal);
}

.document .document-form-checkbox:checked {
  background:
    linear-gradient(
        135deg,
        transparent 42%,
        var(--document-color-bold, var(--document-text-bold)) 42% 54%,
        transparent 54%
      )
      center / 70% 70% no-repeat,
    linear-gradient(
        45deg,
        transparent 45%,
        var(--document-color-bold, var(--document-text-bold)) 45% 57%,
        transparent 57%
      )
      15% 58% / 40% 40% no-repeat,
    var(--document-bg-minimal);
}

.document .document-form-input {
  box-sizing: border-box;
  min-width: 0;
  height: 5mm;
  padding-inline: 0.5mm;
  color: var(--document-color-bold, var(--document-text-bold));
  font: inherit;
  background: transparent;
  border: var(--document-stroke-hairline) solid var(--document-border-moderate);
  border-radius: 0;
}

.document .record-form-input {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  height: 5.5mm;
  padding: 0 1mm;
  color: var(--document-color-bold, var(--document-text-bold));
  font: inherit;
  background: var(--document-bg-subtle);
  border: 0;
  border-block-end: var(--document-stroke-hairline) solid var(--document-border-bold);
  border-radius: 0;
  outline: 0;
}

.document .record-form-input:focus-visible {
  outline: var(--document-stroke-hairline) solid var(--document-border-bold);
  outline-offset: var(--document-stroke-hairline);
}

.document .signature-pad-slot {
  position: relative;
  box-sizing: border-box;
  min-width: 0;
  min-height: 14mm;
  overflow: hidden;
  color: var(--document-color-minimal, var(--document-text-minimal));
  background: var(--document-bg-subtle);
  border: var(--document-stroke-hairline) solid var(--document-border-subtle);
}

.document .signature-pad-canvas {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  touch-action: none;
  user-select: none;
}

.document .signature-pad-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--document-color-minimal, var(--document-text-minimal));
  font-size: var(--document-font-size-8);
  line-height: var(--document-line-height-12);
  pointer-events: none;
}

.document .invoice-status {
  display: inline-flex;
  align-items: center;
  min-height: 4mm;
  padding-inline: 1mm;
  color: var(--document-status-success);
  font-size: 8pt;
  font-weight: var(--document-font-weight-medium);
  line-height: 10pt;
  background: var(--document-status-success-subtle);
}

.document .document-table.invoice-meta-table,
.document .document-table.invoice-meta-table :is(th, td) {
  border: 0;
}

.document .invoice-list-price {
  text-decoration: line-through;
}

.document .pmf-wrap {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: keep-all;
  white-space: normal;
}

.document .pmf-align-text-bottom {
  vertical-align: text-bottom;
}

@media print {
  .document :is(.record-form-input, .record-form-input:focus-visible) {
    outline: 0;
  }
}
