/* ============================================================
   Darra GitLab Release 发布页 UX 优化 (darra-ux-release.css)
   2026-08-05 · git.darra.xyz 工业仓储
   功能:
     1. 版本卡片 — 标题/版本号/发布信息卡片化, 版本号大字号
     2. 下载按钮 — ZIP (Windows) / TAR.GZ (Linux) 两种源码归档
     3. 模型/数据集徽章 — assets links 按桶分类 (模型=蓝 / 数据集=绿)
     4. 发布说明 markdown 渲染增强 (卡片 + 表格美化)
     5. 凭证区块 + tar 归档隐藏 (JS 标记 class, 这里落样式)
   约束: 只加不改, 不破坏中文界面/翻译/既有注入; class 均由
         darra-ux-release.js 运行时标记 (避免误伤其它页面)
   ============================================================ */

/* ---------- 1. 版本卡片: 标题 + 版本号 + 发布信息 ---------- */
.darra-rel-card .darra-rel-title {
  display: block;
  font-size: 24px;
  line-height: 1.35;
  font-weight: 700;
  letter-spacing: 0.2px;
  color: var(--gl-text-color, #1f2328);
  margin-bottom: 6px;
}
.darra-rel-card .darra-rel-title:hover { text-decoration: none; }

/* 版本号 tag 徽章 */
.darra-rel-tag {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  background: rgba(30, 144, 255, 0.12);
  color: #0b6bcb;
  border: 1px solid rgba(30, 144, 255, 0.35);
  text-decoration: none;
  transition: background 0.15s ease;
}
.darra-rel-tag:hover { background: rgba(30, 144, 255, 0.22); text-decoration: none; }

/* 发布信息行 (作者/时间/commit) */
.darra-rel-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--gl-text-subtle-color, #6b7280);
  margin-top: 4px;
}
.darra-rel-meta .gl-avatar { border-radius: 50%; }

/* 整体卡片容器 */
.darra-rel-card {
  padding: 4px 0 10px 0;
}

/* ---------- 2. 下载按钮 (ZIP / TAR.GZ) ---------- */
.darra-rel-zip-btn,
.darra-rel-targz-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 18px 8px 14px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  color: #ffffff !important;
  background: linear-gradient(135deg, #1e90ff 0%, #0b6bcb 100%);
  box-shadow: 0 2px 6px rgba(30, 144, 255, 0.35);
  text-decoration: none !important;
  transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease;
}
.darra-rel-zip-btn:hover,
.darra-rel-targz-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(30, 144, 255, 0.45);
  filter: brightness(1.05);
  color: #ffffff !important;
  text-decoration: none !important;
}
.darra-rel-zip-btn .gl-button-icon,
.darra-rel-targz-btn .gl-button-icon { margin-right: 2px; }

/* 隐藏 plain TAR / TAR.BZ2 归档 */
.darra-rel-hidden { display: none !important; }

/* 归档列表整体 */
.darra-rel-archives {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  list-style: none;
  padding: 0;
  margin: 8px 0 4px 0;
}

/* ---------- 3. 模型/数据集徽章 ---------- */
.darra-rel-asset {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 14px;
  border-radius: 8px;
  font-size: 13.5px;
  font-weight: 600;
  text-decoration: none !important;
  transition: transform 0.12s ease, box-shadow 0.12s ease;
}
.darra-rel-asset:hover { transform: translateY(-1px); text-decoration: none !important; }

/* 模型 = 蓝徽章 */
.darra-rel-badge-model {
  color: #0b6bcb !important;
  background: rgba(30, 144, 255, 0.10);
  border: 1px solid rgba(30, 144, 255, 0.35);
}
.darra-rel-badge-model:hover { background: rgba(30, 144, 255, 0.18); }

/* 数据集 = 绿徽章 */
.darra-rel-badge-dataset {
  color: #0e8a3e !important;
  background: rgba(14, 138, 62, 0.10);
  border: 1px solid rgba(14, 138, 62, 0.35);
}
.darra-rel-badge-dataset:hover { background: rgba(14, 138, 62, 0.18); }

/* 徽章小标签 — CSS ::after 伪元素 (2026-08-18 改, 不再由 JS 追加 DOM 子节点,
   防与 GitLab Vue 重渲染形成 追加→还原→观察器→再追加 死循环, Release 页主线程卡死) */
.darra-rel-badge-model::after,
.darra-rel-badge-dataset::after {
  content: attr(data-darra-badge);
  display: inline-block;
  margin-left: 8px;
  padding: 1px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.3px;
  color: #ffffff;
  flex-shrink: 0;
}
.darra-rel-badge-model::after { background: #1e90ff; }
.darra-rel-badge-dataset::after { background: #0e8a3e; }

/* assets 链接列表 (其他区) 卡片化 */
.darra-rel-assets-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 6px 0 2px 0;
}
.darra-rel-assets-list > li { margin: 0; }

/* ---------- 4. 发布说明 markdown 增强 ---------- */
.darra-rel-description {
  border-radius: 10px;
  border: 1px solid var(--gl-border-color, #d0d7de);
  background: var(--gl-bg-default, #ffffff);
  padding: 16px 18px;
  margin: 10px 0 6px 0;
  overflow: hidden;
}
.darra-rel-description table {
  border-collapse: collapse;
  margin: 10px 0;
  display: block;
  overflow-x: auto;
}
.darra-rel-description table th,
.darra-rel-description table td {
  border: 1px solid var(--gl-border-color, #d0d7de);
  padding: 6px 12px;
  font-size: 13.5px;
}
.darra-rel-description table th {
  background: rgba(30, 144, 255, 0.08);
  font-weight: 600;
}
.darra-rel-description code {
  background: rgba(30, 144, 255, 0.08);
  border-radius: 4px;
  padding: 1px 5px;
  font-size: 12.5px;
}
.darra-rel-description pre {
  border-radius: 8px;
  background: var(--gl-bg-subtle, #f6f8fa);
  padding: 12px 14px;
  overflow-x: auto;
}
.darra-rel-description h2,
.darra-rel-description h3,
.darra-rel-description h4 {
  margin-top: 14px;
  margin-bottom: 6px;
}
.darra-rel-description > *:first-child { margin-top: 0; }
.darra-rel-description > *:last-child { margin-bottom: 0; }

/* ---------- 5. 凭证区块隐藏 (JS 标记) ---------- */
.darra-rel-evidence-hidden { display: none !important; }

/* ---------- 6. 资源区块标题 ---------- */
.darra-rel-assets-heading {
  font-size: 15px;
  font-weight: 700;
  margin: 14px 0 2px 0;
  color: var(--gl-text-color, #1f2328);
}
