.media-actions { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0; }
.media-cover-preview { aspect-ratio: 16/9; background: var(--soft); border-radius: 12px;
  overflow: hidden; display: grid; place-items: center; }
.media-cover-preview img { width: 100%; height: 100%; object-fit: cover; }
.media-cover-preview[data-empty="true"] { aspect-ratio: auto; min-height: 72px;
  padding: 16px; text-align: center; }
.media-cover-preview p { margin: 0; font-size: 12px; }
.media-cover h3 { font: inherit; font-size: 13px; margin: 0 0 10px; }
.media-cover .media-actions { margin: 4px 0 18px; }
.media-cover .media-actions button { font-size: 12px; padding: 8px; }
.media-check { display: flex !important; gap: 10px; align-items: center; }
.media-check input { width: auto; }
.media-status { color: var(--muted); font-size: 13px; }
.crop-dialog { width: min(720px, calc(100% - 24px)); max-height: 90dvh; overflow: auto; }
.crop-dialog canvas { width: 100%; aspect-ratio: 16/9; margin: 20px 0; border-radius: 12px;
  touch-action: none; cursor: grab; background: var(--soft); }
.crop-dialog label { display: block; margin: 10px 0; }
.crop-dialog input { width: 100%; }
.cover > img[data-asset] { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.cover.has-media > :not(img) { visibility: hidden; }
.article-body figure { margin: 24px 0; }
.article-body figure img { display: block; max-width: 100%; height: auto; border-radius: 10px; }
.article-body figcaption { color: var(--muted); font-size: 13px; margin-top: 8px; }
img[data-asset][hidden] { display: none; }
