/* Remove EXIF data */
.ex-list { display: grid; gap: 12px; }
.ex-card { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 16px; padding: 14px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.ex-thumb { display: grid; place-items: center; height: 150px; background: repeating-conic-gradient(#eee 0 25%, #fff 0 50%) 0 0 / 16px 16px; border-radius: 10px; overflow: hidden; }
.ex-thumb img { max-width: 100%; max-height: 100%; object-fit: contain; }
.ex-thumb .ex-wait { width: 26px; height: 26px; border: 3px solid var(--line); border-top-color: var(--ink); border-radius: 50%; animation: ex-spin 0.9s linear infinite; }
@keyframes ex-spin { to { transform: rotate(360deg); } }
.ex-body { display: grid; gap: 10px; align-content: start; min-width: 0; }
.ex-body > b { font: 600 14px/1.3 var(--sans); word-break: break-all; }
.ex-meta { display: grid; gap: 4px 12px; grid-template-columns: max-content minmax(0, 1fr); margin: 0; font: 400 13px/1.45 var(--sans); }
.ex-meta div { display: contents; }
.ex-meta dt { color: var(--muted); }
.ex-meta dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.ex-meta dd.is-bad { color: #b8321c; font-weight: 600; }
.ex-meta dd.is-ok { color: #0f7a4f; font-weight: 600; }
.ex-removed { margin: 0; font: 500 13px/1.4 var(--sans); color: var(--ink); }
.ex-progress { gap: 6px; }
.ex-fail { margin: 0; font: 500 13px/1.4 var(--sans); color: #b8321c; }
.ex-card.is-failed { border-color: #e6b8ae; }
.ex-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.ex-size { font: 400 12.5px/1.3 var(--sans); color: var(--muted); }
@media (max-width: 640px) {
  .ex-card { grid-template-columns: 1fr; }
  .ex-thumb { height: 120px; }
  .ex-meta { grid-template-columns: 1fr; gap: 2px; }
  .ex-meta dt { margin-top: 6px; }
}
