/* Batch 4: scoped to the progress capture sheet. Other report types retain their workflow. */
#sheet .sheet-card.photo-first {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.photo-first > * { min-width: 0; }
.photo-first #sheetTitle { order: 0; }
.photo-first #sheetContext { order: 1; overflow-wrap: anywhere; }
.photo-first #sheetHelp { order: 2; margin: 0; }
.photo-first #sheetPhoto { order: 3; margin: 0; }
.photo-first #photoBtn {
  width: 100%;
  min-height: 56px;
  font-size: 17px;
  font-weight: 800;
  color: var(--surface);
  background: var(--gold-grad);
}
.photo-first #photoStatus { margin: 8px 0; font-size: 14px; color: var(--muted); }
.photo-first #photoStatus:empty, .photo-first #photoThumbs:empty { display: none; }
.photo-first #photoThumbs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.photo-first .pthumb { display: flex; flex-direction: column; max-width: 100%; min-width: 0; }
.photo-first .pthumb img { height: 88px; width: 100%; object-fit: contain; }
.photo-first .pthumb small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.photo-first .pthumb .pdel { min-width: 44px; min-height: 44px; }
.photo-first .photo-stage { order: 4; border: 0; padding: 0; margin: 0; display: flex; gap: 8px; }
.photo-stage legend { margin-bottom: 6px; font-size: 14px; color: var(--muted); }
.photo-stage button { flex: 1; min-width: 44px; min-height: 44px; font: inherit; font-weight: 700; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); color: var(--text); }
.photo-stage button[aria-pressed="true"] { border-color: var(--text); background: var(--text); color: var(--surface); }
.photo-first .photo-note-label { order: 5; font-weight: 700; }
.photo-first #sheetInput { order: 6; min-height: 80px; height: 80px; margin: 0; font-size: 16px; }
.photo-first .field-error { order: 7; }
.photo-first .photo-more { order: 8; border-block: 1px solid var(--line); padding-block: 4px; }
.photo-more summary { min-height: 44px; padding-block: 10px; box-sizing: border-box; cursor: pointer; font-weight: 700; }
.photo-more button, .photo-more select { min-height: 44px; max-width: 100%; }
.photo-more .ux-tools { margin: 12px 0; }
.photo-first .sheet-actions { order: 9; margin: 0; z-index: 1; }
.photo-first #sheetSubtype:empty { display: none; }
.photo-receipt { border-left: 4px solid var(--muted); padding-left: 10px; font-weight: 700; }
.photo-receipt[data-state="received"] { border-color: var(--ok); }
.photo-receipt[data-state="attention"], .photo-receipt[data-state="partial"] { border-color: var(--danger); }
