/* 生成物：由 tools/web/sync-prototype-css.mjs 从 docs/prototypes/2026-09-21-阳光玻璃忠实延展/pages/discover.css 逐字复制，勿手改。
   原型是唯一视觉真值；要改视觉先改原型，再跑 `node tools/web/sync-prototype-css.mjs .` 同步。 */
/* 发现页采用宽幅任务卡；颜色、玻璃与动作仍沿用阳光玻璃令牌。
   2026-09-23 重排（规格 docs/superpowers/specs/2026-09-23-发现页任务卡与全站加载态升级-design.md §3）：
   卡高定 260、封面 228；右栏字阶收成 12／13／17 三档＋金额 28；认证改芯片，不再用展开会撑高卡片的 <details>。
   右栏高度预算（16 内边距之内 228）：标签 20 ＋ 标题 8＋2×23.8＋4 ＋ 描述 2×20.2 ＋ 事实行 8＋22 ＋ 页脚 13＋54 ≈ 217，余 11。 */
body[data-page="discover"] .task-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--b-sp-5);
}
body[data-page="discover"] .extension-card {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr);
  gap: var(--b-sp-5);
  height: 260px;
  padding: var(--b-sp-4);
}
body[data-page="discover"] .task-cover-frame {
  position: relative;
  height: 228px;
  overflow: hidden;
  border: 1px solid var(--b-line);
  border-radius: var(--b-radius-inner);
  background: var(--b-bg-inset);
}
body[data-page="discover"] .task-card-cover {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body[data-page="discover"] .crop-card-image .task-card-cover {
  /* 原素材含底部作品信息，只露出上方画面。 */
  height: 155%;
  object-position: center top;
}
/* 右栏三行：头（标签＋标题＋描述）／事实行（贴底）／页脚；页脚位置对所有卡相同 */
body[data-page="discover"] .task-card-body {
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-width: 0;
  min-height: 0;
}
body[data-page="discover"] .task-card-top {
  display: block;
  min-height: 0;
}
body[data-page="discover"] .task-card-info {
  display: block;
}
body[data-page="discover"] .task-card-labels {
  display: flex;
  align-items: baseline;
  gap: var(--b-sp-2);
  min-width: 0;
}
body[data-page="discover"] .task-card-info .tag {
  flex: none;
  height: 20px;
  font-size: var(--b-fs-12);
  font-weight: 500;
}
body[data-page="discover"] .task-client {
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  color: var(--b-text-3);
  font-size: var(--b-fs-12);
  line-height: 1.5;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* 中文标题不用拉丁字体的负字距（--b-ls-title），夹两行 */
body[data-page="discover"] .task-card-info h2 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin: var(--b-sp-2) 0 var(--b-sp-1);
  font-size: var(--b-fs-17);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}
body[data-page="discover"] .task-card-info .task-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin: 0;
  color: var(--b-text-2);
  font-size: var(--b-fs-13);
  line-height: 1.55;
}
/* 事实行：截止＋认证芯片同一行，贴在第二行轨道底部；
   与下方分隔线留出与 footer 上内边距同宽的空，芯片不压线（两行标题＋两行描述时 260 仍放得下） */
body[data-page="discover"] .task-card-meta {
  display: flex;
  align-items: center;
  align-self: end;
  gap: var(--b-sp-2);
  min-width: 0;
  margin: var(--b-sp-2) 0 var(--b-sp-3);
}
body[data-page="discover"] .task-deadline {
  flex: none;
  margin: 0;
  color: var(--b-text-3);
  font-size: var(--b-fs-12);
  line-height: 22px;
  white-space: nowrap;
}
body[data-page="discover"] .task-deadline time {
  font-variant-numeric: tabular-nums;
}
body[data-page="discover"] .task-certs {
  display: flex;
  gap: var(--b-sp-1);
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  list-style: none;
}
body[data-page="discover"] .task-cert {
  flex: 0 1 auto;
  min-width: 0;
  height: 22px;
  padding: 0 var(--b-sp-2);
  overflow: hidden;
  border-radius: var(--b-radius-chip);
  background: var(--b-bg-inset);
  color: var(--b-text-2);
  font-size: var(--b-fs-12);
  line-height: 22px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body[data-page="discover"] .task-cert.is-more {
  flex: none;
  color: var(--b-text-3);
}
body[data-page="discover"] .task-certs-none {
  margin: 0;
  color: var(--b-text-3);
  font-size: var(--b-fs-12);
  line-height: 22px;
}
body[data-page="discover"] .task-card-footer {
  align-items: center;
  justify-content: space-between;
  gap: var(--b-sp-2);
  padding-top: var(--b-sp-3);
  border-top: 1px solid var(--b-line);
}
body[data-page="discover"] .task-money {
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}
body[data-page="discover"] .task-money-amount {
  display: flex;
  align-items: baseline;
  gap: var(--b-sp-1);
}
/* 金额是拉丁数字：保留数字字体与负字距，700 与标题 600 拉开重量 */
body[data-page="discover"] .task-money strong {
  font-family: var(--b-font-num);
  font-size: var(--b-fs-28);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: var(--b-ls-title);
  font-variant-numeric: tabular-nums;
}
body[data-page="discover"] .task-money .money-unit {
  color: var(--b-text-3);
  font-size: var(--b-fs-12);
}
body[data-page="discover"] .task-money .split {
  margin: var(--b-sp-1) 0 0;
  text-align: left;
  font-size: var(--b-fs-12);
  line-height: 1.5;
  white-space: nowrap;
}
body[data-page="discover"] .task-card-footer .card-action {
  font-size: var(--b-fs-13);
  padding-inline: var(--b-sp-3);
  gap: var(--b-sp-1);
  min-height: 40px;
  flex-shrink: 0;
}
@media (max-width: 980px) {
  body[data-page="discover"] .task-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 600px) {
  body[data-page="discover"] .task-grid {
    gap: var(--b-sp-3);
  }
  /* 手机单列：卡高由内容定；标题与描述都预留两行，同一列内卡高仍一致 */
  body[data-page="discover"] .extension-card {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: var(--b-sp-2) var(--b-sp-3);
    height: auto;
    padding: var(--b-sp-3);
  }
  body[data-page="discover"] .task-cover-frame {
    grid-column: 1;
    grid-row: 1;
    height: auto;
    min-height: 124px;
  }
  body[data-page="discover"] .task-card-body {
    display: contents;
  }
  body[data-page="discover"] .task-card-top {
    grid-column: 2;
    grid-row: 1;
  }
  body[data-page="discover"] .task-card-info h2 {
    min-height: 2.8em;
    margin-top: var(--b-sp-1);
  }
  body[data-page="discover"] .task-card-info .task-description {
    min-height: 3em;
    font-size: var(--b-fs-12);
    line-height: 1.5;
  }
  body[data-page="discover"] .task-card-meta,
  body[data-page="discover"] .task-card-footer {
    grid-column: 1 / -1;
    margin: 0;
  }
  body[data-page="discover"] .task-card-footer {
    padding-top: var(--b-sp-2);
  }
  body[data-page="discover"] .task-money strong {
    font-size: var(--b-fs-22);
  }
  body[data-page="discover"] .task-money .split {
    margin-top: 0;
  }
  body[data-page="discover"] .task-card-footer .card-action {
    min-height: 40px;
    padding-inline: var(--b-sp-4);
  }
}
