/* ImageBubble 图片气泡样式 */

.bubble {
  position: relative;
  max-width: 220px;
  max-height: 220px;
  border-radius: var(--radius-lg, 12px);
  border-top-left-radius: 0;
  overflow: hidden;
  cursor: pointer;
  background: var(--color-bubble-background, #fff);
}

.image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.paywalled .image {
  filter: blur(8px);
  transform: scale(1.04);
}

.paywallOverlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.04) 0%,
      rgba(255, 255, 255, 0.14) 100%
    );
  pointer-events: none;
}

.errorFallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 220px;
  background: var(--color-bubble-background, #fff);
  color: var(--color-text-secondary, #9e9e9e);
  font-size: 24px;
}
