.image-frame-raw {
  position: relative;
  display: block;
  margin: 0;
  border: 1px solid var(--border-color-default);
  border-radius: var(--border-radius-lg);
  background: var(--bg-surface-low);
  overflow: hidden;
  transition: border-color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);
}

.image-frame-raw::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  border-top: 2px solid var(--brand-primary);
  border-left: 2px solid transparent;
  opacity: 0.7;
}

.image-frame-raw::after {
  content: "";
  position: absolute;
  top: var(--spacing-sm);
  right: var(--spacing-sm);
  width: var(--spacing-lg);
  height: var(--spacing-xs);
  border-radius: var(--border-radius-full);
  background: var(--brand-secondary);
  opacity: 0.9;
  pointer-events: none;
}

.image-frame-raw:hover {
  border-color: var(--border-color-strong);
  transform: translateY(-1px);
}

.image-frame-raw:focus-within {
  border-color: var(--brand-primary);
}

.image-frame-raw__image {
  width: 100%;
  height: auto;
  display: block;
}
