.replacement-dialog {
  width: min(680px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
}
.replacement-heading, .replacement-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.replacement-heading h2 { margin: 0; flex:1; min-width:0; font-size:1.25rem; }
.replacement-heading { flex-wrap:nowrap; }
.replacement-dialog [data-content] { overflow-wrap:anywhere; }
.replacement-actions { justify-content: flex-start; margin-block: 12px; }
.replacement-actions label { margin: 0; }
.replacement-dialog h3 { margin-top: 16px; }
.replacement-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.replacement-record { border-top: 1px solid var(--line); padding-block: 12px; overflow-wrap: anywhere; }
.replacement-record p { margin-block: 6px; }
.replacement-history { padding-inline-start: 22px; overflow-wrap: anywhere; }
.replacement-dialog fieldset { margin: 16px 0 0; border: 0; padding: 0; min-width: 0; }
.replacement-dialog textarea { min-height: 70px; }
.replacement-dialog [type=file] { max-width: 100%; }
@media (max-width: 480px) {
  .replacement-dialog .dialog-content { padding: 14px; }
  .replacement-dialog :is(button,select,input:not([type=checkbox])) { min-height: 44px; }
}

.replacement-remnant {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)) auto;
  gap:8px; align-items:end; margin-block-end:10px;
}
.replacement-remnant label { min-width:0; margin:0; }
.replacement-remnant input { width:100%; }

.replacement-step { color:var(--muted); margin-block:6px 14px; }
.replacement-photo { margin-block:10px; }
.replacement-photo summary { cursor:pointer; padding-block:8px; }
.replacement-source-search { display:flex; align-items:end; gap:8px; margin-block:12px; }
.replacement-source-search label { flex:1; min-width:0; margin:0; }
.replacement-source-option { display:grid; gap:3px; width:100%; text-align:left; margin-block:6px; white-space:normal; }
.replacement-source-option span { font-weight:400; font-size:.9em; }
