/* Confirmation uses the same form rhythm and tokens as Add Place. */
.photo-confirmation { display: grid; gap: 10px; padding-top: 12px; overflow-wrap: anywhere; color: var(--place-ink); font: 400 12px/1.5 var(--place-font); }
.photo-confirmation :is(h3,h4) { margin: 0; font-size: var(--place-section-size); line-height: 1.5; font-weight: 700; color: var(--place-heading); }
.photo-confirmation :is(p,small,summary,[data-location-status]) { font-size: var(--place-helper-size); line-height: 1.5; }
.photo-confirmation small { display: block; color: var(--place-muted); }
#photo-review-content .photo-confirm-back { justify-self: start; color: var(--place-muted); }
.photo-confirm-summary,.photo-execution-summary { padding: 12px; border: 1px solid var(--place-line); border-radius: var(--place-card-radius); background: #fff; }
.photo-confirm-summary { display: grid; gap: 3px; }
.photo-confirm-summary strong { display: block; color: var(--place-heading); font-size: var(--place-section-size); font-weight: 700; }
.photo-confirm-summary p { margin: 0; }
.photo-confirm-prepared { margin: 0; padding: 8px 10px; border-radius: var(--place-control-radius); background: #eff6ff; color: #1d4ed8; }
.photo-confirm-card { display: grid; gap: 8px; margin: 0; padding: 12px; border: 1px solid #e5e7eb; border-radius: var(--place-card-radius); background: #f9fafb; box-shadow: 0 1px 2px rgba(0,0,0,.05); scroll-margin-top: 12px; }
.photo-confirm-card-head,.photo-issue-panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.photo-confirm-card-head > span { flex: none; color: var(--place-muted); font-size: var(--place-helper-size); }
.photo-confirm-thumbnails { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; margin: 2px 0; }
.photo-confirm-thumbnails > div { min-width: 0; overflow: hidden; }
.photo-confirm-meta { display: flex; flex-wrap: wrap; gap: 3px 10px; color: var(--place-muted); font-size: var(--place-helper-size); }
.photo-confirm-meta span:not(:last-child)::after { content: ' ·'; }
.photo-confirm-location,.photo-confirm-capacity { margin: 0; color: var(--place-muted); }
.photo-confirm-errors { display: grid; gap: 2px; }
.photo-confirm-errors strong { font-size: var(--place-helper-size); }
#photo-review-content .photo-confirm-errors button { display: block; width: 100%; min-height: 44px; padding: 6px 0; text-align: left; font-weight: 600; }
.photo-confirmation ul { margin: 0; padding-left: 18px; color: #92400e; }
#photo-review-content .photo-confirm-edit { width: 100%; }
.photo-confirm-editor { display: grid; gap: 10px; margin-top: 2px; padding-top: 12px; border-top: 1px solid var(--place-line); }
.photo-confirm-editor label { display: grid; gap: 4px; min-width: 0; }
.photo-confirm-editor :is(input,select) { width: 100%; min-height: 44px; }
.photo-confirm-search-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 6px; align-items: stretch; }
#photo-review-content .photo-confirm-search-row button { min-width: 64px; }
#photo-review-content .photo-confirm-map-button { width: 100%; }
.photo-confirm-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.photo-coordinate-advanced summary { display: flex; align-items: center; color: var(--place-muted); }
[data-location-results] { display: grid; gap: 6px; }
[data-location-results] button { text-align: left; overflow-wrap: anywhere; }
[data-location-map]:not([hidden]) { height: 260px; border-radius: var(--place-control-radius); overflow: hidden; }
.photo-issue-panel { display: grid; gap: 8px; scroll-margin-top: 12px; }
.photo-issue-list { display: grid; gap: 5px; }
#photo-review-content .photo-issue-list button { display: flex; min-height: 44px; flex-direction: column; align-items: flex-start; justify-content: center; width: 100%; padding: 7px 9px; text-align: left; }
.photo-issue-list button span { color: var(--place-muted); font-weight: 400; }
.photo-confirm-footnote { margin: 2px 2px 6px; color: var(--place-muted); }
.photo-issue-highlight { animation: photo-issue-highlight 1.5s ease-out; }
@keyframes photo-issue-highlight { from { outline: 3px solid #93c5fd; } to { outline: 0 solid transparent; } }
@media(prefers-reduced-motion:reduce) { .photo-issue-highlight { animation: none; outline: 2px solid #93c5fd; } }
