/* Compact setup-error list inside the AR invoice accordion. Layout of the
   order table and invoice grid is unchanged. */
.col-status--with-count {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
}

.setup-error-count {
  min-width: 20px;
  justify-content: center;
}

.invoice-panel .setup-error-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 0 12px;
  padding: 12px 16px;
  background: var(--ads-section-bg, #f5f5f5);
  border: 1px solid var(--ads-card-border, rgba(15, 18, 20, 0.1));
  border-radius: 8px;
  position: sticky;
  left: 0;
  width: max-content;
  max-width: calc(100vw - 280px);
  box-sizing: border-box;
}

.setup-error-row {
  display: grid;
  grid-template-columns: max-content auto auto;
  justify-content: start;
  column-gap: 12px;
  row-gap: 2px;
  align-items: center;
}

.setup-error-rule {
  font: var(--ads-font-body-md-sem, 600 14px/20px "Open Sans", sans-serif);
  color: var(--ads-gray-600, #1e2528);
  min-width: 0;
}

.setup-error-field,
.setup-error-hint {
  grid-column: 1 / -1;
  font: var(--ads-font-body-md-reg, 400 14px/20px "Open Sans", sans-serif);
  color: var(--ads-gray-200, #3b4347);
  min-width: 0;
}

.setup-error-hint {
  color: var(--ads-gray-100, #51585b);
}

.setup-error-view {
  white-space: nowrap;
  justify-self: end;
}

@media (max-width: 1100px) {
  .setup-error-row {
    grid-template-columns: max-content auto;
    justify-content: start;
  }
  .setup-error-view,
  .setup-error-field,
  .setup-error-hint {
    grid-column: 1 / -1;
    justify-self: start;
  }
}

/* Prompt 25 — invoice / line-item indicators and dismissal. Layout of the
   invoice cards and line-item table is unchanged. */
.ov-err-indicator {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: 8px;
  vertical-align: middle;
  color: var(--ads-red-100, #db5461);
}

.ov-err-indicator--warning { color: var(--ads-orange-100, #f5bb7a); }

.ov-err-indicator svg {
  display: block;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
}

.ov-err-indicator .ads-chip {
  min-width: 20px;
  justify-content: center;
}

.detail-nav-subitem .ov-err-indicator {
  margin-left: 6px;
  flex: 0 0 auto;
}

.ov-field-value .ov-err-indicator { margin-left: 8px; }

.ov-card-sfi .ov-field-value {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.ov-li-cell-line {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

.ov-li-errors {
  margin: 12px 16px 4px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ov-li-error-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ov-li-error-heading {
  margin: 0;
  font: var(--ads-font-body-md-sem, 600 14px/20px "Open Sans", sans-serif);
  color: var(--ads-gray-600, #1e2528);
}

.ov-li-error-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  padding: 8px 12px;
  background: var(--ads-section-bg, #f5f5f5);
  border: 1px solid var(--ads-card-border, rgba(15, 18, 20, 0.1));
  border-radius: 8px;
}

.ov-li-error-row.is-dismissed {
  opacity: 0.64;
}

.ov-li-error-rule {
  font: var(--ads-font-body-md-sem, 600 14px/20px "Open Sans", sans-serif);
  color: var(--ads-gray-600, #1e2528);
}

.ov-li-error-dismissed {
  flex: 1 1 100%;
  margin: 0;
  font: var(--ads-font-body-md-reg, 400 14px/20px "Open Sans", sans-serif);
  color: var(--ads-gray-100, #51585b);
}

.ov-li-btn[aria-disabled="true"],
.ov-menu button[aria-disabled="true"] {
  opacity: 0.45;
  cursor: not-allowed;
}

.ov-dismiss-pop {
  position: absolute;
  z-index: 40;
  width: 280px;
  padding: 12px;
  background: var(--ads-card-bg, #fff);
  border: 1px solid var(--ads-card-border, rgba(15, 18, 20, 0.1));
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(15, 18, 20, 0.16);
  box-sizing: border-box;
}

.ov-dismiss-pop[hidden] { display: none; }

.ov-dismiss-label {
  display: block;
  margin: 0 0 6px;
  font: var(--ads-font-body-md-sem, 600 14px/20px "Open Sans", sans-serif);
  color: var(--ads-gray-600, #1e2528);
}

.ov-dismiss-pop .input-field {
  width: 100%;
  box-sizing: border-box;
}

.ov-dismiss-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 12px;
}
