.photo-variant-group > h4 { margin: 2px 0 8px; font-size: 14px; }
#photoAutoProcessing { min-width: 0; margin: 12px 0; padding: 10px; border: 1px solid var(--line); border-radius: 6px; }
#photoAutoProcessing legend { padding: 0 5px; font-size: 13px; }
.photo-variant-review { margin: 8px 0 12px; }
.photo-variant-choices { display: grid; grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); gap: 8px; margin-bottom: 8px; }
.photo-variant-choice { min-width: 0; background: var(--panel); }
.photo-variant-choice img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; background: var(--field); border-radius: 4px; }
.photo-variant-choice label { display: flex; align-items: center; gap: 6px; margin: 7px 0; font-size: 12px; }
.photo-variant-choice a { font-size: 11px; }
.photo-variant-group .job-action:disabled { cursor: default; opacity: .55; }
.photo-result-preview { display: block; width: min(100%, 180px); aspect-ratio: 1; object-fit: contain; background: var(--field); border-radius: 6px; margin: 8px 0; }
.photo-style-field { min-width: 0; }
.photo-style-entry { display: flex; align-items: stretch; gap: 5px; margin-top: 4px; }
.photo-style-entry input { flex: 1; min-width: 0; width: auto; margin: 0; }
.photo-style-save.job-action { display: grid; place-items: center; flex: 0 0 34px; width: 34px; min-height: 34px; padding: 0; font-size: 19px; }
.photo-style-save[aria-pressed="true"] { color: var(--cyan); border-color: var(--cyan); }
#photoStyleStatus { margin: 4px 0 8px; }
@media (max-width: 600px) { .photo-style-save.job-action { flex-basis: 40px; width: 40px; min-height: 40px; } }
.image-stale-review { margin: 7px 0 11px; padding: 7px 9px; border: 1px solid var(--line); border-radius: 6px; }
.image-stale-review > summary { cursor: pointer; }
.image-stale-review > .hint { margin: 7px 0; }
.image-stale-list { display: grid; gap: 7px; margin-top: 8px; }
.image-stale-row { display: grid; gap: 7px; min-width: 0; padding: 8px; background: var(--panel); border-radius: 5px; }
.image-stale-head { display: flex; flex-wrap: wrap; gap: 3px 9px; align-items: baseline; }
.image-stale-thumbs { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; }
.image-stale-thumbs img { width: 54px; height: 54px; object-fit: contain; background: var(--field); border-radius: 4px; }
.image-stale-row > button { justify-self: start; }
#photoExpand[aria-pressed=true] { background: var(--purple-bg); border-color: var(--violet); }
#photoTemplateDialog { width: min(760px, calc(100% - 24px)); max-height: calc(100dvh - 24px); overflow: auto; box-sizing: border-box; padding: 18px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); color: var(--text); }
#photoTemplateDialog::backdrop { background: #0009; }
#photoTemplateDialog label { display: block; margin: 10px 0 4px; }
#photoTemplateDialog input, #photoTemplateDialog select, #photoTemplateDialog textarea { display: block; width: 100%; min-width: 0; box-sizing: border-box; }
#photoTemplateDialog textarea { min-height: 180px; font-size: 14px; }
#photoTemplateDialog .photo-actions { flex-wrap: wrap; }
#photoTemplateDialog button { white-space: normal; }
