.gallery-admin-table .gallery-thumb {
  display: block;
  width: 84px;
  height: 58px;
  border-radius: 8px;
  object-fit: cover;
  background: #eef2f7;
}

.gallery-description {
  max-width: 280px;
  color: var(--muted);
  white-space: normal;
}

.visibility-pill {
  display: inline-flex;
  align-items: center;
  min-width: 54px;
  justify-content: center;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 800;
}

.visibility-pill.visible { color: #0d6848; background: #e7f6ef; }
.visibility-pill.hidden { color: #667085; background: #eef1f5; }

.featured-pill {
  display: inline-flex;
  min-width: 48px;
  justify-content: center;
  border-radius: 999px;
  padding: 5px 10px;
  background: #eef1f5;
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}
.featured-pill.selected { color: #7a4f00; background: #fff3cf; }
.featured-count { margin-left: auto; color: #0d6848; font-weight: 800; }
.featured-count.incomplete { color: #b54708; }

.gallery-dialog-card { width: min(1040px, calc(100vw - 32px)); }
.gallery-form-layout { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1.5fr); gap: 28px; }
.gallery-fields .form-grid { align-items: start; }
.gallery-preview {
  min-height: 250px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px dashed #cbd5e1;
  border-radius: 12px;
  background: #f8fafc;
  color: var(--muted);
}
.gallery-preview img { width: 100%; height: 300px; object-fit: cover; }
.gallery-recommendation { line-height: 1.55; }
.gallery-file-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 12px;
  margin: 10px 0 12px;
  padding: 10px 12px;
  border-radius: 8px;
  background: #eef5ff;
  color: #344054;
  font-size: 12px;
}
.gallery-file-meta[hidden] { display: none; }
.gallery-file-warning { flex-basis: 100%; color: #b54708; font-weight: 700; }
.gallery-form-actions { align-items: center; }
.form-action-spacer { flex: 1; }
.danger { border: 1px solid #efb6bc; border-radius: 8px; padding: 10px 16px; background: #fff5f6; color: var(--red); font-weight: 800; }
.empty-state { padding: 48px 20px; text-align: center; color: var(--muted); }

@media (max-width: 800px) {
  .gallery-form-layout { grid-template-columns: 1fr; }
  .gallery-preview { min-height: 200px; }
  .gallery-preview img { height: 240px; }
  .gallery-filter-panel { grid-template-columns: 1fr; }
}
