/* 图片批量重命名 · 工具局部样式（叠加在框架 first-party-tools.css 之上） */

.ir-privacy { margin-top: 0; }
.ir-mobile-hint { display: none; }

.ir-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
  counter-reset: ir-step;
}
.ir-step { position: relative; padding-left: 34px; counter-increment: ir-step; }
.ir-step::before {
  content: counter(ir-step);
  position: absolute;
  left: 0;
  top: 1px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--fpt-accent-soft);
  color: var(--fpt-accent-strong);
  font-size: 13px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ir-step-title { font-size: 15px; font-weight: 600; margin: 0 0 10px; }
.ir-drop-main { margin: 0; font-size: 14px; color: var(--fpt-ink-2); }
.ir-drop-sub { margin: 0; font-size: 12px; color: var(--fpt-ink-3); }
.ir-fieldset { border: 0; margin: 0 0 12px; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.ir-radio { display: flex; gap: 8px; align-items: baseline; font-size: 14px; color: var(--fpt-ink); }

.ir-summary { font-size: 13px; color: var(--fpt-ink-2); margin: 0 0 10px; }
.ir-summary strong { color: var(--fpt-ink); }
.ir-preview-wrap { max-height: 420px; overflow-y: auto; }
.ir-table td { white-space: normal; word-break: break-all; }
.ir-table .ir-source { max-width: 220px; }
.ir-asin-input {
  width: 130px;
  min-height: 30px;
  padding: 4px 8px;
  border: 1px solid var(--fpt-line);
  border-radius: 7px;
  font-size: 13px;
  font-family: inherit;
}
.ir-tag-select {
  min-height: 30px;
  padding: 2px 6px;
  border: 1px solid var(--fpt-line);
  border-radius: 7px;
  font-size: 13px;
  font-family: inherit;
  background: var(--fpt-panel);
}
.ir-newname { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; }
.ir-status { font-size: 12px; }
.ir-status-ok { color: var(--fpt-success); }
.ir-status-warning { color: var(--fpt-warning); }
.ir-status-error { color: var(--fpt-danger); }
tr.ir-row-error td { background: var(--fpt-danger-soft); }
tr.ir-row-warning td { background: var(--fpt-warning-soft); }

.ir-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }

@media (max-width: 768px) {
  .ir-mobile-hint { display: block; }
  .ir-step { padding-left: 30px; }
  .ir-asin-input { width: 110px; }
}
