/**
 * 素材库面板文案超长截断修复
 *
 * 问题：场景1、场景2 等描述文字过长，超出面板宽度
 * 方案：固定宽度 + 单行截断 + hover 显示完整内容
 */

/* 素材库列表项的文案容器 */
[data-product-asset-source-menu-root] .ant-list-item-meta-description,
[data-product-asset-source-menu-root] .ant-list-item-meta-content > div:last-child,
[class*="asset-item-desc"],
[class*="asset-description"],
[class*="scene-description"] {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
}

/* 针对 Ant Design List 组件 */
[data-product-asset-source-menu-root] .ant-list-item-meta {
  flex: 1;
  min-width: 0; /* 关键：允许 flex 子元素缩小 */
}

[data-product-asset-source-menu-root] .ant-list-item-meta-content {
  flex: 1;
  min-width: 0;
  width: 100%;
}

[data-product-asset-source-menu-root] .ant-list-item-meta-title {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 素材库弹窗内的所有长文本 */
[data-product-asset-source-menu-root] [class*="text"],
[data-product-asset-source-menu-root] p,
[data-product-asset-source-menu-root] span:not([class*="icon"]):not(.ant-badge) {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 确保父容器有明确宽度 */
[data-product-asset-source-menu-root] .ant-list-item {
  display: flex;
  align-items: flex-start;
  width: 100%;
}

/* 素材库标签页内容区域 */
[data-product-asset-source-menu-root] .ant-tabs-tabpane {
  width: 100%;
  overflow: hidden;
}

/* Hover 时显示完整内容（通过 title 属性） */
[data-product-asset-source-menu-root] [title]:hover {
  cursor: help;
}

/* 特定场景：如果文案在一个固定宽度的容器内 */
[data-product-asset-source-menu-root] [class*="modal"],
[data-product-asset-source-menu-root] [class*="panel"],
[data-product-asset-source-menu-root] [class*="dropdown"] {
  max-width: 100%;
}

/* 调试样式：帮助定位元素（生产环境删除） */
/*
[data-product-asset-source-menu-root] * {
  outline: 1px solid rgba(255, 0, 0, 0.1) !important;
}
*/

/**
 * 补充修复：左侧已上传缩略图区域的文案截断
 */

/* 缩略图下方的文件名/标题 */
[class*="thumbnail"] [class*="title"],
[class*="thumbnail"] [class*="name"],
[class*="asset-card"] [class*="title"],
[class*="asset-card"] [class*="name"],
[class*="upload"] [class*="file-name"] {
  max-width: 120px; /* 固定宽度 */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: inline-block;
}

/* 确保文案容器是块级元素 */
[class*="thumbnail-info"],
[class*="asset-info"] {
  display: block;
  width: 100%;
  max-width: 120px;
}

/* 失效图片自动隐藏 */
img[src*="placeholder"],
img[src=""],
img:not([src]) {
  display: none !important;
}

/* 图片加载失败时隐藏其容器 */
[class*="thumbnail"] img[alt*="加载失败"],
[class*="asset-card"] img[alt*="error"] {
  display: none !important;
}

/* 通用：所有缩略图文案都限制在15个中文字符内（约30个字节）*/
[class*="thumb"] [class*="text"],
[class*="preview"] [class*="caption"] {
  max-width: 15em; /* 15个字符宽度 */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
