.app-status {
  position: fixed;
  z-index: 40;
  top: 68px;
  right: 20px;
  max-width: min(440px, calc(100vw - 40px));
  padding: 9px 12px;
  background: var(--surface-2);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
  color: var(--text);
}

.app-status:empty {
  display: none;
}

.app-status.is-error {
  border-color: #784054;
  color: #f0a0b7;
}

.job-strip {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  gap: 24px;
  min-height: 44px;
  padding: 7px 24px;
  background: #151815;
  border-bottom: 1px solid #2d3d37;
}

.job-strip-main,
.job-strip-progress {
  align-items: center;
  display: flex;
  gap: 12px;
  min-width: 0;
}

.job-state {
  flex: 0 0 auto;
  font-weight: 650;
}

.job-message {
  overflow: hidden;
  color: var(--muted);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.job-counter {
  flex: 0 0 auto;
  color: var(--muted);
  font-variant-numeric: tabular-nums;
}
