/* Shared invoice block for app / cart / document checkout */

.bqs-invoice-panel {
  margin: 18px 0;
  display: grid;
  gap: 12px;
}

.bqs-invoice-panel.is-active {
  padding: 16px;
  border: 1px solid #99f6e4;
  border-radius: 12px;
  background: #ecfdf5;
  box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.1);
}

.bqs-invoice-toggle {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid var(--color-border, #cbd5e1);
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
  font-weight: 600;
  color: var(--color-text-primary, #0f172a);
  line-height: 1.45;
}

.bqs-invoice-toggle-input {
  width: 18px;
  height: 18px;
  min-width: 18px;
  margin-top: 2px;
  accent-color: var(--color-primary, #0f766e);
  cursor: pointer;
}

.bqs-invoice-toggle-text {
  flex: 1;
}

.bqs-invoice-lead {
  margin: 0;
  color: var(--color-text-secondary, #475569);
  font-size: 14px;
  line-height: 1.6;
}

.bqs-invoice-fields {
  display: grid;
  gap: 12px;
  padding-top: 4px;
}

.bqs-invoice-fields[hidden] {
  display: none !important;
}

.bqs-invoice-fields .bqs-form-group {
  margin-bottom: 0;
}

.bqs-invoice-company-field[hidden] {
  display: none !important;
}

.bqs-invoice-address .bqs-input {
  border-color: #14b8a6;
}

.bqs-invoice-warning {
  padding: 12px 14px;
  border-radius: 10px;
  background: #fffbeb;
  border: 1px solid #fde68a;
  color: #92400e;
  font-size: 14px;
  line-height: 1.55;
}

.bqs-invoice-footer {
  margin: 0;
  color: var(--color-text-secondary, #475569);
  font-size: 13px;
  line-height: 1.55;
}

/* Legacy aliases — migrate callers to bqs-invoice-* */
.cart-invoice-panel,
.invoice-checkout-box {
  margin: 18px 0;
  display: grid;
  gap: 12px;
}

.cart-invoice-fields,
.invoice-fields {
  display: grid;
  gap: 12px;
}

.cart-invoice-fields[hidden],
.invoice-fields[hidden] {
  display: none !important;
}

.cart-invoice-lead,
.invoice-help {
  margin: 0;
  color: var(--color-text-secondary, #475569);
  font-size: 14px;
  line-height: 1.6;
}

.invoice-warning {
  padding: 12px 14px;
  border-radius: 10px;
  background: #fffbeb;
  border: 1px solid #fde68a;
  color: #92400e;
  font-size: 14px;
  line-height: 1.55;
}
