.ys-image-field {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.ys-image-field__drop {
  position: relative;
  border: 1px dashed var(--ys-border-strong);
  border-radius: var(--ys-radius-sm);
  background: var(--ys-bg);
  padding: 0.875rem;
  text-align: center;
  transition: border-color var(--ys-transition), background var(--ys-transition);
  cursor: pointer;
}
.ys-image-field__drop:hover,
.ys-image-field__drop--over {
  border-color: var(--ys-accent);
  background: var(--ys-accent-soft);
}
.ys-image-field__drop--has-image {
  padding: 0.5rem;
}
.ys-image-field__preview {
  width: 100%;
  max-height: 160px;
  min-height: 72px;
  border-radius: var(--ys-radius-xs);
  background: var(--ys-surface);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-bottom: 0.5rem;
  display: none;
}
.ys-image-field__drop--has-image .ys-image-field__preview {
  display: block;
}
.ys-image-field__placeholder {
  font-size: 0.8125rem;
  color: var(--ys-text-secondary);
  line-height: 1.45;
  margin: 0 0 0.5rem;
}
.ys-image-field__drop--has-image .ys-image-field__placeholder {
  display: none;
}
.ys-image-field__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  justify-content: center;
}
.ys-image-field__url-label {
  font-size: 0.75rem;
  color: var(--ys-text-secondary);
  margin: 0 0 0.25rem;
}
.ys-image-field--compact .ys-image-field__drop {
  padding: 0.5rem;
}
.ys-image-field--compact .ys-image-field__preview {
  max-height: 80px;
  min-height: 48px;
  margin-bottom: 0.375rem;
}
.ys-image-field--compact .ys-image-field__placeholder {
  font-size: 0.75rem;
  margin-bottom: 0.25rem;
}
.ys-image-field__loading {
  font-size: 0.75rem;
  color: var(--ys-accent-text);
}
