/* =============================================================
 * Theme · Dream (11 · David Holz · Midjourney)
 * 配色：深夜蓝紫底 + 流光金 + 紫罗兰渐变 + 银白文字
 * 灵感：Midjourney 的图像底色——梦境、超现实、油画质感、星空
 * 这是唯一一个深色背景的主题（因为 Holz 是"反硅谷"的，反向也反到视觉里）
 * ============================================================= */

:root {
  /* 深夜底色：基础 / 卡片 / 次级 */
  --dr-bg: #0c0a1a;            /* 深夜紫黑 */
  --dr-panel: #16132b;         /* 卡片底 */
  --dr-panel-2: #1f1a3a;       /* 次级卡片底 */
  --dr-panel-3: #2a2350;       /* 高亮卡片底 */
  /* 主色：紫罗兰 + 深紫 + 流光金 */
  --dr-violet: #c084fc;
  --dr-violet-deep: #a855f7;
  --dr-purple: #8b5cf6;
  --dr-purple-deep: #6d28d9;
  --dr-indigo: #6366f1;
  --dr-indigo-deep: #4338ca;
  --dr-gold: #f0c75e;
  --dr-gold-deep: #c89640;
  --dr-rose: #f472b6;
  --dr-rose-deep: #be185d;
  --dr-cyan: #67e8f9;
  --dr-cyan-deep: #06b6d4;
  --dr-blue: #93c5fd;
  --dr-blue-deep: #3b82f6;
  /* 兼容继承自 prism 的色名 */
  --dr-red: #fb7185;
  --dr-red-deep: #e11d48;
  --dr-orange: var(--dr-gold);
  --dr-orange-deep: var(--dr-gold-deep);
  --dr-yellow: #fde68a;
  --dr-yellow-deep: var(--dr-gold-deep);
  --dr-green: #86efac;
  --dr-green-deep: #16a34a;
  --dr-teal: var(--dr-cyan);
  --dr-teal-deep: var(--dr-cyan-deep);
  --dr-amber: var(--dr-gold);
  --dr-amber-deep: var(--dr-gold-deep);
  /* 文字：银白系（深底必需） */
  --dr-ink: #f5f3ff;           /* 主文字 */
  --dr-ink-soft: #d8d3f0;      /* 副文字 */
  --dr-ink-dim: #a8a2c8;       /* 辅文字 */
  --dr-ink-faint: #6f6a92;     /* 极弱文字 */
  --dr-deep: #f5f3ff;          /* 深色名称里其实是"最强主文字"——保持向上 */
  --dr-deep-soft: #d8d3f0;
  /* 描边 / 边框 */
  --dr-border: rgba(245, 243, 255, 0.12);
  --dr-border-soft: rgba(245, 243, 255, 0.06);
  --dr-glow: rgba(192, 132, 252, 0.30);
  /* 梦境渐变：紫罗兰 → 流光金 → 玫瑰粉（hero / ending / final-line 用） */
  --dr-prism-grad: linear-gradient(135deg,
    #c084fc 0%, #a855f7 25%, #f0c75e 50%, #f472b6 75%, #c084fc 100%);
  --dr-dream-grad: radial-gradient(ellipse at 30% 20%,
    rgba(192, 132, 252, 0.25) 0%,
    rgba(99, 102, 241, 0.15) 35%,
    rgba(12, 10, 26, 0.95) 70%);
}

/* ============== 全局 ============== */
.theme-dream {
  background: var(--dr-bg);
  color: var(--dr-ink);
  font-family: 'Inter', 'Noto Serif SC', -apple-system, sans-serif;
}
.theme-dream .topnav {
  background: rgba(255, 255, 255, 0.92);
  border-bottom: 1px solid var(--dr-border);
  backdrop-filter: blur(8px);
}
.theme-dream .topnav .back-link { color: var(--dr-ink); }
.theme-dream .topnav .back-link:hover { color: var(--dr-teal); }
.theme-dream .topnav-capsule {
  background: rgba(32, 178, 170, 0.08);
  border-color: rgba(32, 178, 170, 0.25);
  color: var(--dr-deep);
}
.theme-dream .progress-bar {
  background: linear-gradient(90deg, var(--dr-teal), var(--dr-deep));
}

/* ============== Hero ============== */
.hero-dream {
  position: relative;
  padding: 96px 32px 56px;
  background:
    radial-gradient(60% 80% at 80% 0%, rgba(32, 178, 170, 0.12) 0%, transparent 60%),
    radial-gradient(50% 70% at 0% 100%, rgba(26, 58, 82, 0.08) 0%, transparent 60%),
    var(--dr-bg);
  overflow: hidden;
}
.hero-dream .hero-grid {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(31, 41, 55, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(31, 41, 55, 0.04) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(ellipse 80% 60% at 50% 40%, #000 30%, transparent 80%);
  pointer-events: none;
}
.hero-dream .hero-spotlight {
  position: absolute;
  top: -60px; right: -40px;
  width: 420px; height: 420px;
  background: radial-gradient(circle, rgba(32, 178, 170, 0.18) 0%, transparent 65%);
  filter: blur(20px);
  pointer-events: none;
}
.hero-dream .hero-content {
  position: relative; z-index: 1;
  max-width: 820px; margin: 0 auto;
  text-align: center;
}
.hero-dream .hero-tag {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 6px 14px;
  background: rgba(32, 178, 170, 0.10);
  border: 1px solid rgba(32, 178, 170, 0.30);
  border-radius: 999px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  color: var(--dr-teal-deep);
  letter-spacing: 0.04em;
  margin-bottom: 22px;
}
.hero-dream .hero-tag .tag-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--dr-teal);
  box-shadow: 0 0 10px var(--dr-glow);
}
.hero-dream .hero-title {
  display: flex; flex-direction: column; align-items: center; gap: 6px;
  margin: 0 0 24px;
  font-family: 'Noto Serif SC', serif;
}
.hero-dream .title-eyebrow {
  font-family: 'Inter', sans-serif;
  font-size: 22px;
  font-weight: 500;
  color: var(--dr-teal);
  letter-spacing: 0.01em;
}
.hero-dream .title-line {
  font-size: 30px;
  font-weight: 700;
  color: var(--dr-ink);
  line-height: 1.3;
}
.hero-dream .title-line-emphasis {
  font-size: 60px;
  font-weight: 900;
  line-height: 1.05;
  background: linear-gradient(135deg, var(--dr-deep) 0%, var(--dr-teal) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-top: 8px;
}
.hero-dream .hero-deck {
  font-size: 16px;
  line-height: 1.85;
  color: var(--dr-ink-soft);
  max-width: 680px;
  margin: 22px auto 28px;
}
.hero-dream .hero-deck em {
  color: var(--dr-deep); font-style: normal;
}
.hero-dream .hero-deck strong {
  color: var(--dr-ink);
  font-weight: 700;
  background: linear-gradient(180deg, transparent 80%, var(--dr-amber) 80%);
  padding: 0 3px;
}
.hero-dream .hero-meta {
  display: flex; gap: 16px; align-items: center;
  justify-content: space-around;
  padding: 22px 0;
  margin-top: 28px;
  border-top: 1px solid var(--dr-border);
  border-bottom: 1px solid var(--dr-border);
}
.hero-dream .hm-item {
  display: flex; flex-direction: column; gap: 4px;
  text-align: center;
  flex: 1;
}
.hero-dream .hm-num {
  font-family: 'Inter', sans-serif;
  font-size: 32px;
  font-weight: 800;
  color: var(--dr-deep);
}
.hero-dream .hm-num sup {
  font-size: 16px;
  color: var(--dr-teal);
}
.hero-dream .hm-unit {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: var(--dr-ink-dim);
  letter-spacing: 0.08em;
}
.hero-dream .hm-label {
  font-size: 13px;
  color: var(--dr-ink-soft);
}
.hero-dream .hm-divider {
  width: 1px;
  height: 36px;
  background: var(--dr-border);
}

/* Portrait */
/* Portrait —— 明确 margin-top 让出 hero-title 与 hero-deck 的呼吸空间，
   并保持 z-index 不超过文字层（hero-content 内默认 stacking context），
   与 10 prism 同步 */
.portrait-dream {
  margin: 56px auto 32px;
  max-width: 540px;
  position: relative;
  z-index: 1;
  clear: both;
}
.portrait-frame-dream {
  position: relative;
  padding: 14px 14px 0;
  background: linear-gradient(135deg, var(--dr-teal) 0%, var(--dr-deep) 100%);
  border-radius: 6px;
  box-shadow:
    0 2px 0 rgba(0, 0, 0, 0.25),
    0 14px 36px rgba(0, 0, 0, 0.5),
    0 0 0 1px rgba(192, 132, 252, 0.18),
    0 0 60px rgba(192, 132, 252, 0.10);
  transform: rotate(-1.5deg);
  transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
  overflow: visible;
}
.portrait-frame-dream:hover {
  transform: rotate(0deg) scale(1.02);
}
/* 左上角胶带 —— Dream 紫 */
.portrait-frame-dream::before {
  content: '';
  position: absolute;
  top: -10px;
  left: 30px;
  width: 80px;
  height: 22px;
  background: rgba(192, 132, 252, 0.55);
  border-left: 1px dashed rgba(0, 0, 0, 0.18);
  border-right: 1px dashed rgba(0, 0, 0, 0.18);
  transform: rotate(-4deg);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35), 0 0 14px rgba(192, 132, 252, 0.35);
  z-index: 3;
}
/* 右上角胶带 —— Dream 金 */
.portrait-frame-dream::after {
  content: '';
  position: absolute;
  top: -8px;
  right: 36px;
  width: 70px;
  height: 22px;
  background: rgba(255, 215, 0, 0.55);
  border-left: 1px dashed rgba(0, 0, 0, 0.18);
  border-right: 1px dashed rgba(0, 0, 0, 0.18);
  transform: rotate(5deg);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35), 0 0 14px rgba(255, 215, 0, 0.25);
  z-index: 3;
}
.portrait-frame-dream .portrait-photo {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 4px;
  display: block;
  filter: contrast(1.03) saturate(1.05);
}
.portrait-meta-dream {
  display: flex; flex-direction: column; gap: 3px;
  padding: 14px 6px 10px;
  text-align: center;
}
.portrait-meta-dream .portrait-name-en {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.9);
  font-weight: 600;
  letter-spacing: 0.03em;
}
.portrait-meta-dream .portrait-name-cn {
  font-family: 'Caveat', 'Noto Serif SC', cursive;
  font-size: 28px;
  font-weight: 700;
  color: #fff;
  line-height: 1.0;
}
.portrait-meta-dream .portrait-role {
  font-size: 11px;
  color: rgba(255, 255, 255, 0.7);
}
.portrait-dream .portrait-caption {
  margin-top: 14px;
  text-align: center;
  font-family: 'Caveat', cursive;
  font-size: 16px;
  color: var(--dr-ink-dim);
}
.portrait-dream .caption-mark {
  color: var(--dr-teal);
  font-weight: 700;
}

/* ============== Article 主体 ============== */
.theme-dream .article {
  max-width: 1100px;
  margin: 0 auto;
  padding: 40px clamp(32px, 5vw, 60px) 60px;
}
.board-dream {
  background: var(--dr-panel);
  border: 1px solid var(--dr-border);
  border-radius: 22px;
  padding: 44px 40px;
  margin: 28px 0;
  box-shadow: 0 6px 22px rgba(26, 58, 82, 0.06);
  position: relative;
}
.board-dream .board-marker {
  display: flex; align-items: center; gap: 12px;
  margin-bottom: 18px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
}
.board-dream .marker-num {
  display: inline-block;
  padding: 3px 10px;
  background: rgba(32, 178, 170, 0.10);
  border: 1px solid rgba(32, 178, 170, 0.30);
  color: var(--dr-teal-deep);
  border-radius: 6px;
  font-weight: 700;
}
.board-dream .marker-label {
  color: var(--dr-ink-dim);
  letter-spacing: 0.04em;
}
.board-dream .board-title {
  font-family: 'Noto Serif SC', serif;
  font-weight: 800;
  font-size: 28px;
  line-height: 1.4;
  color: var(--dr-ink);
  margin: 0 0 22px;
}
.board-dream p {
  font-size: 16px;
  line-height: 1.95;
  color: var(--dr-ink-soft);
  margin: 14px 0;
}
.board-dream p strong {
  color: var(--dr-ink);
  font-weight: 700;
  background: linear-gradient(180deg, transparent 80%, var(--dr-amber) 80%);
  padding: 0 3px;
}
.board-dream p em {
  color: var(--dr-deep); font-style: normal;
}
.board-dream .highlight-marker {
  background: linear-gradient(180deg, transparent 78%, rgba(32, 178, 170, 0.22) 78%);
  color: var(--dr-deep);
  padding: 0 4px;
  font-weight: 700;
}
.board-dream .emphasized-line {
  margin: 24px 0;
  padding: 18px 22px;
  background: rgba(32, 178, 170, 0.06);
  border-left: 3px solid var(--dr-teal);
  border-radius: 8px;
  font-family: 'Noto Serif SC', serif;
  font-size: 19px;
  font-weight: 600;
  color: var(--dr-ink);
  line-height: 1.7;
}

/* big-quote - 引用链接卡片样式 */
.board-dream .big-quote {
  margin: 26px 0;
  padding: 24px 28px;
  background: linear-gradient(135deg, rgba(32, 178, 170, 0.06), rgba(26, 58, 82, 0.04));
  border: 1px solid rgba(32, 178, 170, 0.22);
  border-radius: 14px;
  position: relative;
}
.board-dream .big-quote::before {
  content: "[ source ]";
  position: absolute;
  top: -10px; left: 18px;
  padding: 2px 10px;
  background: var(--dr-panel);
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: var(--dr-teal-deep);
  border: 1px solid rgba(32, 178, 170, 0.30);
  border-radius: 4px;
}
.board-dream .big-quote p {
  font-family: 'Noto Serif SC', serif;
  font-size: 18px;
  line-height: 1.85;
  color: var(--dr-ink);
  margin: 6px 0 8px;
}
.board-dream .big-quote cite {
  display: block;
  font-style: normal;
  font-size: 13px;
  color: var(--dr-ink-dim);
  text-align: right;
  font-family: 'JetBrains Mono', monospace;
}
.board-dream .big-quote-teal { border-color: var(--dr-teal); background: rgba(32, 178, 170, 0.08); }
.board-dream .big-quote-deep { border-color: var(--dr-deep-soft); background: rgba(26, 58, 82, 0.06); }
.board-dream .big-quote-amber { border-color: var(--dr-amber-deep); background: rgba(253, 224, 71, 0.18); }
.board-dream .big-quote-amber::before { color: var(--dr-amber-deep); border-color: var(--dr-amber-deep); }

/* callout */
.board-dream .callout {
  margin: 22px 0;
  padding: 18px 22px;
  background: var(--dr-panel-2);
  border: 1px dashed var(--dr-border);
  border-radius: 12px;
}
.board-dream .callout p {
  margin: 0;
  font-size: 15px;
  color: var(--dr-ink-soft);
}
.board-dream .callout-key {
  background: rgba(32, 178, 170, 0.06);
  border-color: rgba(32, 178, 170, 0.30);
}
.board-dream .callout-key p strong { color: var(--dr-teal-deep); }
.board-dream .callout-insight {
  background: rgba(253, 224, 71, 0.18);
  border-color: rgba(202, 138, 4, 0.30);
}

/* insight-list */
.board-dream .insight-list {
  list-style: none; padding: 0; margin: 20px 0;
}
.board-dream .insight-list li {
  position: relative;
  padding: 10px 0 10px 30px;
  font-size: 15px;
  color: var(--dr-ink-soft);
  border-bottom: 1px dashed var(--dr-border);
  line-height: 1.7;
  counter-increment: pp-li;
}
.board-dream .insight-list {
  counter-reset: pp-li;
}
.board-dream .insight-list li::before {
  content: "[" counter(pp-li, decimal-leading-zero) "]";
  position: absolute; left: 0; top: 12px;
  color: var(--dr-teal);
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  font-weight: 700;
}

/* pair-grid */
.board-dream .pair-grid {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 14px;
  margin: 24px 0;
}
.board-dream .pair-side {
  padding: 20px;
  border-radius: 14px;
  background: var(--dr-panel-2);
  border: 1px solid var(--dr-border);
}
.board-dream .pair-old { background: rgba(107, 114, 128, 0.06); }
.board-dream .pair-new {
  background: linear-gradient(135deg, rgba(32, 178, 170, 0.08), rgba(26, 58, 82, 0.04));
  border-color: rgba(32, 178, 170, 0.25);
}
.board-dream .pair-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: var(--dr-ink-dim);
  letter-spacing: 0.06em;
  margin-bottom: 8px;
}
.board-dream .pair-headline {
  font-family: 'Noto Serif SC', serif;
  font-weight: 700;
  font-size: 17px;
  color: var(--dr-ink);
  margin-bottom: 8px;
}
.board-dream .pair-detail {
  font-size: 13px;
  line-height: 1.7;
  color: var(--dr-ink-soft);
}
.board-dream .pair-vs {
  display: flex; align-items: center; justify-content: center;
  font-family: 'JetBrains Mono', monospace;
  font-weight: 700;
  color: var(--dr-teal);
}

/* metrics-row */
.board-dream .metrics-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 14px;
  margin: 22px 0;
}
.board-dream .metric-mini {
  padding: 14px;
  background: var(--dr-panel-2);
  border: 1px solid var(--dr-border);
  border-radius: 12px;
}
.board-dream .metric-mini .mm-num {
  font-family: 'Inter', sans-serif;
  font-weight: 800;
  font-size: 18px;
  color: var(--dr-deep);
}
.board-dream .metric-mini .mm-label {
  font-size: 12px;
  color: var(--dr-ink-dim);
  margin-top: 4px;
}

/* connector */
.theme-dream .connector {
  text-align: center;
  padding: 16px 0;
  font-size: 16px;
  letter-spacing: 12px;
  color: var(--dr-teal);
  opacity: 0.55;
}

/* ============== 全局：dream 主题去除所有斜体 ============== */
.theme-dream em,
.hero-dream em { font-style: normal; }

/* ============== 金句卡片区 ============== */
.theme-dream .quotes-section {
  max-width: 1100px;
  margin: 60px auto;
  padding: 40px clamp(32px, 5vw, 60px);
  background: var(--dr-panel);
  border-radius: 24px;
  border: 1px solid var(--dr-border);
}
.theme-dream .quotes-section-marker {
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  color: var(--dr-ink-dim);
  text-align: center;
  letter-spacing: 0.08em;
  margin-bottom: 8px;
}
.theme-dream .quotes-section-title {
  font-family: 'Noto Serif SC', serif;
  font-weight: 800;
  font-size: 28px;
  color: var(--dr-ink);
  text-align: center;
  margin: 0 0 8px;
}
.theme-dream .quotes-section-deck {
  text-align: center;
  font-size: 14px;
  color: var(--dr-ink-soft);
  max-width: 600px;
  margin: 0 auto 28px;
  line-height: 1.7;
}
.theme-dream .quote-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
}
/* 轮播模式：覆盖 quotes-grid 在 dream 主题下的样式 */
.theme-dream .quotes-grid.view-carousel {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  gap: 20px;
  padding: 16px 4px 28px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: rgba(32, 178, 170, 0.4) transparent;
  mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 60px), transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 60px), transparent 100%);
}
.theme-dream .quotes-grid.view-carousel::-webkit-scrollbar { height: 6px; }
.theme-dream .quotes-grid.view-carousel::-webkit-scrollbar-track { background: rgba(32, 178, 170, 0.08); border-radius: 3px; }
.theme-dream .quotes-grid.view-carousel::-webkit-scrollbar-thumb { background: rgba(32, 178, 170, 0.35); border-radius: 3px; }
.theme-dream .quotes-grid.view-carousel::-webkit-scrollbar-thumb:hover { background: rgba(32, 178, 170, 0.55); }
.theme-dream .quotes-grid.view-carousel .quote-card {
  flex: 0 0 calc((100% - 20px * 2.3) / 2.3);
  min-width: 240px;
  max-width: 320px;
  scroll-snap-align: start;
  aspect-ratio: 3 / 4;
}
.theme-dream .quotes-grid.view-carousel .quote-card:first-child { margin-left: 4px; }
.theme-dream .quotes-grid.view-carousel .quote-card:last-child { margin-right: 60px; }
.theme-dream .quotes-grid.view-carousel .quote-card:hover { transform: scale(1.02); }
.theme-dream .quote-card {
  background: var(--dr-panel);
  border: 1px solid var(--dr-border);
  border-radius: 14px;
  padding: 24px 22px;
  min-height: 280px;
  position: relative;
  overflow: hidden;
  display: flex; flex-direction: column;
  cursor: default;
  transition: transform .35s, box-shadow .35s, border-color .35s;
}
.theme-dream .quote-card:hover {
  transform: translateY(-3px);
}
/* 各色卡片 hover 时 border + shadow 与卡片本色保持一致（参考 09 canvas 多色 hover 模式） */
.theme-dream .card-violet:hover { border-color: var(--dr-violet); box-shadow: 0 14px 36px rgba(192, 132, 252, 0.22); }
.theme-dream .card-purple:hover { border-color: var(--dr-purple); box-shadow: 0 14px 36px rgba(139, 92, 246, 0.22); }
.theme-dream .card-indigo:hover { border-color: var(--dr-indigo); box-shadow: 0 14px 36px rgba(99, 102, 241, 0.22); }
.theme-dream .card-gold:hover   { border-color: var(--dr-gold);   box-shadow: 0 14px 36px rgba(240, 199, 94, 0.22); }
.theme-dream .card-rose:hover   { border-color: var(--dr-rose);   box-shadow: 0 14px 36px rgba(244, 114, 182, 0.22); }
.theme-dream .card-cyan:hover   { border-color: var(--dr-cyan);   box-shadow: 0 14px 36px rgba(103, 232, 249, 0.22); }
.theme-dream .quote-card .card-bg-pattern {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(31, 41, 55, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(31, 41, 55, 0.03) 1px, transparent 1px);
  background-size: 14px 14px;
  pointer-events: none;
}
.theme-dream .quote-card .card-num {
  position: relative;
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  font-weight: 700;
  color: var(--dr-teal-deep);
  letter-spacing: 0.1em;
}
.theme-dream .quote-card .card-mark {
  position: absolute;
  top: 12px; right: 18px;
  font-family: 'Noto Serif SC', serif;
  font-size: 56px;
  color: rgba(32, 178, 170, 0.18);
  line-height: 1;
}
.theme-dream .quote-card .card-tag {
  display: inline-block;
  margin: 8px 0 12px;
  padding: 3px 10px;
  background: rgba(32, 178, 170, 0.10);
  color: var(--dr-teal-deep);
  border-radius: 999px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  position: relative;
}
.theme-dream .quote-card .card-quote-cn {
  font-family: 'Noto Serif SC', serif;
  font-size: 17px;
  line-height: 1.65;
  color: var(--dr-ink);
  margin: 8px 0;
  position: relative;
  flex: 1;
}
.theme-dream .quote-card .card-quote-en {
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  line-height: 1.6;
  color: var(--dr-ink-soft);
  font-style: normal;
  margin: 8px 0;
  position: relative;
}
.theme-dream .quote-card .card-context {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: var(--dr-ink-dim);
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px dashed var(--dr-border);
  position: relative;
}
.theme-dream .quote-card .card-source { color: var(--dr-ink-faint); }
.theme-dream .card-teal { background: linear-gradient(155deg, rgba(32, 178, 170, 0.08), var(--dr-panel) 60%); border-color: rgba(32, 178, 170, 0.30); }
.theme-dream .card-teal .card-mark { color: rgba(32, 178, 170, 0.30); }
.theme-dream .card-deep { background: linear-gradient(155deg, rgba(26, 58, 82, 0.08), var(--dr-panel) 60%); border-color: rgba(26, 58, 82, 0.25); }
.theme-dream .card-deep .card-mark { color: rgba(26, 58, 82, 0.22); }
.theme-dream .card-deep .card-num, .theme-dream .card-deep .card-tag { color: var(--dr-deep); }
.theme-dream .card-deep .card-tag { background: rgba(26, 58, 82, 0.08); }
.theme-dream .card-amber { background: linear-gradient(155deg, rgba(253, 224, 71, 0.30), var(--dr-panel) 60%); border-color: rgba(202, 138, 4, 0.35); }
.theme-dream .card-amber .card-mark { color: rgba(202, 138, 4, 0.30); }
.theme-dream .card-amber .card-num, .theme-dream .card-amber .card-tag { color: var(--dr-amber-deep); }
.theme-dream .card-amber .card-tag { background: rgba(253, 224, 71, 0.40); }
.theme-dream .quotes-section-tip {
  text-align: center;
  font-size: 13px;
  color: var(--dr-ink-dim);
  margin-top: 22px;
}

/* ============== Ending ============== */
.theme-dream .ending {
  max-width: 1100px;
  margin: 60px auto;
  padding: 50px clamp(32px, 5vw, 60px);
  background:
    radial-gradient(120% 100% at 20% 0%, rgba(32, 178, 170, 0.14) 0%, transparent 55%),
    linear-gradient(180deg, var(--dr-panel) 0%, var(--dr-panel-2) 100%);
  border-radius: 20px;
  border: 1px solid var(--dr-border);
  text-align: center;
  position: relative;
  overflow: hidden;
}
.theme-dream .ending-marker {
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  color: var(--dr-teal-deep);
  letter-spacing: 0.14em;
  margin-bottom: 14px;
}
.theme-dream .ending-title {
  font-family: 'Noto Serif SC', serif;
  font-weight: 900;
  font-size: 30px;
  line-height: 1.35;
  color: var(--dr-ink);
  margin-bottom: 20px;
}
.theme-dream .ending p {
  font-size: 15px;
  line-height: 1.9;
  color: var(--dr-ink-soft);
  margin: 12px 0;
  text-align: left;
}
.theme-dream .ending p strong {
  color: var(--dr-ink);
  background: linear-gradient(180deg, transparent 80%, var(--dr-amber) 80%);
  padding: 0 3px;
}
.theme-dream .ending p em { color: var(--dr-deep); font-style: normal; }
.theme-dream .ending-mantra {
  margin: 30px 0;
  padding: 22px;
  background: rgba(32, 178, 170, 0.06);
  border: 1px solid rgba(32, 178, 170, 0.25);
  border-radius: 16px;
  font-family: 'Noto Serif SC', serif;
  font-size: 16px;
  font-weight: 600;
  color: var(--dr-ink);
  line-height: 1.85;
  text-align: left;
}
.theme-dream .ending-mantra strong { color: var(--dr-teal-deep); }
.theme-dream .ending-pulse {
  margin-top: 28px;
  display: flex; flex-direction: column; align-items: center; gap: 10px;
}
.theme-dream .ending-final-line {
  font-family: 'JetBrains Mono', monospace;
  color: var(--dr-deep);
  font-size: 17px;
  font-weight: 700;
  padding: 10px 20px;
  background: rgba(32, 178, 170, 0.10);
  border: 1px solid rgba(32, 178, 170, 0.30);
  border-radius: 999px;
}
.theme-dream .ending-sub-line {
  font-family: 'Noto Serif SC', serif;
  font-size: 15px;
  color: var(--dr-ink-soft);
  line-height: 1.85;
  margin-top: 6px;
}

/* ============== References ============== */
.theme-dream .references {
  max-width: 1100px;
  margin: 40px auto 60px;
  padding: 32px clamp(32px, 5vw, 60px);
  background: var(--dr-panel);
  border: 1px solid var(--dr-border);
  border-radius: 16px;
}
.theme-dream .references h3 {
  color: var(--dr-ink);
  font-family: 'Inter', sans-serif;
  font-weight: 800;
  font-size: 19px;
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px dashed rgba(32, 178, 170, 0.30);
}
.theme-dream .references ul { list-style: none; padding: 0; margin: 0; }
.theme-dream .references li {
  padding: 12px 0;
  border-bottom: 1px solid var(--dr-border-soft);
  font-size: 14px;
}
.theme-dream .references a { color: var(--dr-teal-deep); text-decoration: none; }
.theme-dream .references a:hover { color: var(--dr-deep); text-decoration: underline; }
.theme-dream .ref-tag {
  display: inline-block;
  margin-left: 10px;
  padding: 2px 8px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: var(--dr-ink-dim);
  background: var(--dr-panel-2);
  border-radius: 4px;
}
.theme-dream .ref-meta {
  margin-top: 18px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  color: var(--dr-ink-dim);
  line-height: 1.7;
}

/* ============== Modal ============== */
.theme-dream .modal-overlay { background: rgba(31, 41, 55, 0.78); }
.theme-dream .modal-content { background: var(--dr-panel); border: 1px solid var(--dr-border); }
.theme-dream .modal-close { color: var(--dr-ink); }
.theme-dream .modal-btn {
  background: var(--dr-panel-2);
  color: var(--dr-ink);
  border: 1px solid var(--dr-border);
}
.theme-dream .modal-btn:hover { background: rgba(32, 178, 170, 0.10); border-color: var(--dr-teal); color: var(--dr-teal-deep); }
.theme-dream .modal-counter { color: var(--dr-ink-dim); }
.theme-dream .modal-download-btn {
  background: linear-gradient(135deg, var(--dr-teal), var(--dr-deep));
  color: #fff;
  font-weight: 700;
}

/* ============== 10 专属：棱镜光谱条（hero 区） ============== */
/* 视觉灵感：白光经过棱镜分解出 7 色光谱，斜射在画面里 */
.hero-dream .dream-stars {
  position: absolute;
  top: 0; right: -40px; bottom: 0;
  width: 60%;
  pointer-events: none;
  z-index: 0;
  opacity: 0.85;
  transform: rotate(-12deg) translateY(-40px);
  filter: blur(0.5px);
}
.hero-dream .dream-star {
  position: absolute;
  left: 0; right: 0;
  height: 3px;
  border-radius: 2px;
  opacity: 0;
  transform-origin: left center;
  animation: pr-bar-emerge 1.4s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  box-shadow: 0 0 12px currentColor;
}
.hero-dream .dream-star-red    { background: var(--dr-red);    color: var(--dr-red);    top: 18%; animation-delay: 0.05s; }
.hero-dream .dream-star-orange { background: var(--dr-orange); color: var(--dr-orange); top: 28%; animation-delay: 0.15s; }
.hero-dream .dream-star-yellow { background: var(--dr-yellow); color: var(--dr-yellow); top: 38%; animation-delay: 0.25s; }
.hero-dream .dream-star-green  { background: var(--dr-green);  color: var(--dr-green);  top: 48%; animation-delay: 0.35s; }
.hero-dream .dream-star-cyan   { background: var(--dr-cyan);   color: var(--dr-cyan);   top: 58%; animation-delay: 0.45s; }
.hero-dream .dream-star-blue   { background: var(--dr-blue);   color: var(--dr-blue);   top: 68%; animation-delay: 0.55s; }
.hero-dream .dream-star-violet { background: var(--dr-violet); color: var(--dr-violet); top: 78%; animation-delay: 0.65s; }
@keyframes pr-bar-emerge {
  0%   { opacity: 0; transform: scaleX(0); }
  60%  { opacity: 0.95; transform: scaleX(1.05); }
  100% { opacity: 0.75; transform: scaleX(1); }
}

/* hero 标题渐变升级为棱镜光谱 */
.hero-dream .title-line-emphasis {
  background: var(--dr-prism-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ============== 10 专属：棱镜配色 big-quote（覆盖继承自 canvas 的颜色） ============== */
.board-dream .big-quote-blue {
  border-color: var(--dr-blue);
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.10), rgba(59, 130, 246, 0.02));
}
.board-dream .big-quote-blue::before { color: var(--dr-blue-deep); border-color: var(--dr-blue); }

.board-dream .big-quote-purple {
  border-color: var(--dr-violet);
  background: linear-gradient(135deg, rgba(139, 92, 246, 0.10), rgba(139, 92, 246, 0.02));
}
.board-dream .big-quote-purple::before { color: var(--dr-violet-deep); border-color: var(--dr-violet); }

.board-dream .big-quote-green {
  border-color: var(--dr-green);
  background: linear-gradient(135deg, rgba(39, 174, 96, 0.10), rgba(39, 174, 96, 0.02));
}
.board-dream .big-quote-green::before { color: var(--dr-green-deep); border-color: var(--dr-green); }

.board-dream .big-quote-red {
  border-color: var(--dr-red);
  background: linear-gradient(135deg, rgba(231, 76, 60, 0.10), rgba(231, 76, 60, 0.02));
}
.board-dream .big-quote-red::before { color: var(--dr-red-deep); border-color: var(--dr-red); }

.board-dream .big-quote-orange {
  border-color: var(--dr-orange);
  background: linear-gradient(135deg, rgba(243, 156, 18, 0.12), rgba(243, 156, 18, 0.02));
}
.board-dream .big-quote-orange::before { color: var(--dr-orange-deep); border-color: var(--dr-orange); }

/* full-spectrum big-quote（关键金句用 — 与其他 big-quote 风格统一，去掉彩虹边） */
.board-dream .big-quote-spectrum {
  border-color: var(--dr-violet);
  background: linear-gradient(135deg, rgba(192, 132, 252, 0.10), rgba(192, 132, 252, 0.02));
}
.board-dream .big-quote-spectrum::before { color: var(--dr-violet); border-color: var(--dr-violet); }

/* ============== 09 专属：5 色 big-quote ============== */
.board-dream .big-quote-blue {
  border-color: var(--dr-blue);
  background: linear-gradient(135deg, rgba(26, 188, 254, 0.10), rgba(26, 188, 254, 0.02));
}
.board-dream .big-quote-blue::before { color: var(--dr-blue-deep); border-color: var(--dr-blue); }

.board-dream .big-quote-purple {
  border-color: var(--dr-purple);
  background: linear-gradient(135deg, rgba(162, 89, 255, 0.10), rgba(162, 89, 255, 0.02));
}
.board-dream .big-quote-purple::before { color: var(--dr-purple-deep); border-color: var(--dr-purple); }

.board-dream .big-quote-green {
  border-color: var(--dr-green);
  background: linear-gradient(135deg, rgba(10, 207, 131, 0.10), rgba(10, 207, 131, 0.02));
}
.board-dream .big-quote-green::before { color: var(--dr-green-deep); border-color: var(--dr-green); }

.board-dream .big-quote-red {
  border-color: var(--dr-red);
  background: linear-gradient(135deg, rgba(242, 78, 30, 0.10), rgba(242, 78, 30, 0.02));
}
.board-dream .big-quote-red::before { color: var(--dr-red-deep); border-color: var(--dr-red); }

.board-dream .big-quote-orange {
  border-color: var(--dr-orange);
  background: linear-gradient(135deg, rgba(255, 114, 98, 0.12), rgba(255, 114, 98, 0.02));
}
.board-dream .big-quote-orange::before { color: var(--dr-orange-deep); border-color: var(--dr-orange); }

/* ============== 09 专属：pair-grid 的 adobe / figma 标签 + pair-cell 重写 ============== */
.board-dream .pair-grid {
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.board-dream .pair-cell {
  padding: 22px;
  border-radius: 14px;
  background: var(--dr-panel);
  border: 1px solid var(--dr-border);
  display: flex; flex-direction: column; gap: 10px;
}
.board-dream .pair-tag {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--dr-ink-dim);
  padding: 4px 10px;
  border-radius: 4px;
  align-self: flex-start;
  background: var(--dr-panel-2);
}
.board-dream .pair-tag.adobe-tag {
  background: rgba(225, 33, 39, 0.10);
  color: #b81d23;
}
.board-dream .pair-tag.figma-tag {
  background: linear-gradient(90deg, rgba(26,188,254,0.12), rgba(162,89,255,0.12));
  color: var(--dr-purple-deep);
}
.board-dream .pair-title {
  font-family: 'Noto Serif SC', serif;
  font-weight: 700;
  font-size: 17px;
  color: var(--dr-ink);
  margin: 0;
}
.board-dream .pair-list {
  list-style: none; padding: 0; margin: 6px 0 0;
  display: flex; flex-direction: column; gap: 8px;
}
.board-dream .pair-list li {
  position: relative;
  padding-left: 18px;
  font-size: 14px;
  line-height: 1.65;
  color: var(--dr-ink-soft);
}
.board-dream .pair-list li::before {
  content: "→";
  position: absolute; left: 0; top: 0;
  color: var(--dr-purple);
  font-weight: 700;
}

/* ============== 09 专属：metrics-row 重写（章节 02 用） ============== */
.board-dream .metrics-row {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.board-dream .metric-cell {
  padding: 22px 20px;
  border-radius: 14px;
  background: linear-gradient(160deg, var(--dr-panel), var(--dr-panel-2));
  border: 1px solid var(--dr-border);
  display: flex; flex-direction: column; gap: 6px;
}
.board-dream .metric-cell .metric-num {
  font-family: 'Inter', sans-serif;
  font-weight: 900;
  font-size: 44px;
  line-height: 1;
  background: linear-gradient(135deg, var(--dr-blue), var(--dr-purple));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.board-dream .metric-cell .metric-label {
  font-family: 'Noto Serif SC', serif;
  font-weight: 700;
  font-size: 15px;
  color: var(--dr-ink);
  margin-top: 6px;
}
.board-dream .metric-cell .metric-desc {
  font-size: 12.5px;
  color: var(--dr-ink-dim);
  line-height: 1.6;
}

/* ============== 09 专属：insight-list 重写（章节 07 用 ============== */
.board-dream .insight-list {
  list-style: none;
  padding: 0;
  margin: 22px 0;
  display: flex; flex-direction: column; gap: 14px;
  counter-reset: none;
}
.board-dream .insight-list li {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 16px;
  padding: 18px 20px;
  background: var(--dr-panel);
  border: 1px solid var(--dr-border);
  border-radius: 12px;
  border-bottom: 1px solid var(--dr-border);
}
.board-dream .insight-list li::before { content: none; }
.board-dream .insight-tag {
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding: 4px 0;
  height: fit-content;
  text-align: left;
}
.board-dream .insight-tag.tag-blue   { color: var(--dr-blue-deep);   border-left: 3px solid var(--dr-blue);   padding-left: 8px; }
.board-dream .insight-tag.tag-purple { color: var(--dr-purple-deep); border-left: 3px solid var(--dr-purple); padding-left: 8px; }
.board-dream .insight-tag.tag-green  { color: var(--dr-green-deep);  border-left: 3px solid var(--dr-green);  padding-left: 8px; }
.board-dream .insight-tag.tag-red    { color: var(--dr-red-deep);    border-left: 3px solid var(--dr-red);    padding-left: 8px; }
.board-dream .insight-tag.tag-orange { color: var(--dr-orange-deep); border-left: 3px solid var(--dr-orange); padding-left: 8px; }
.board-dream .insight-body {
  display: flex; flex-direction: column; gap: 6px;
  font-size: 15px;
  line-height: 1.7;
  color: var(--dr-ink);
}
.board-dream .insight-body strong { color: var(--dr-ink); }
.board-dream .insight-detail {
  font-size: 13.5px;
  color: var(--dr-ink-soft);
  line-height: 1.7;
}

/* ============== 09 专属：5 色 quote-card ============== */
.theme-dream .card-blue {
  background: linear-gradient(155deg, rgba(26, 188, 254, 0.14), var(--dr-panel) 60%);
  border-color: rgba(26, 188, 254, 0.30);
}
.theme-dream .card-blue .card-mark { color: rgba(26, 188, 254, 0.32); }
.theme-dream .card-blue .card-num,
.theme-dream .card-blue .card-tag { color: var(--dr-blue-deep); }
.theme-dream .card-blue .card-tag { background: rgba(26, 188, 254, 0.12); }

.theme-dream .card-purple {
  background: linear-gradient(155deg, rgba(162, 89, 255, 0.14), var(--dr-panel) 60%);
  border-color: rgba(162, 89, 255, 0.30);
}
.theme-dream .card-purple .card-mark { color: rgba(162, 89, 255, 0.30); }
.theme-dream .card-purple .card-num,
.theme-dream .card-purple .card-tag { color: var(--dr-purple-deep); }
.theme-dream .card-purple .card-tag { background: rgba(162, 89, 255, 0.12); }

.theme-dream .card-green {
  background: linear-gradient(155deg, rgba(10, 207, 131, 0.14), var(--dr-panel) 60%);
  border-color: rgba(10, 207, 131, 0.30);
}
.theme-dream .card-green .card-mark { color: rgba(10, 207, 131, 0.32); }
.theme-dream .card-green .card-num,
.theme-dream .card-green .card-tag { color: var(--dr-green-deep); }
.theme-dream .card-green .card-tag { background: rgba(10, 207, 131, 0.12); }

.theme-dream .card-red {
  background: linear-gradient(155deg, rgba(242, 78, 30, 0.12), var(--dr-panel) 60%);
  border-color: rgba(242, 78, 30, 0.30);
}
.theme-dream .card-red .card-mark { color: rgba(242, 78, 30, 0.30); }
.theme-dream .card-red .card-num,
.theme-dream .card-red .card-tag { color: var(--dr-red-deep); }
.theme-dream .card-red .card-tag { background: rgba(242, 78, 30, 0.12); }

.theme-dream .card-orange {
  background: linear-gradient(155deg, rgba(255, 114, 98, 0.14), var(--dr-panel) 60%);
  border-color: rgba(255, 114, 98, 0.30);
}
.theme-dream .card-orange .card-mark { color: rgba(255, 114, 98, 0.32); }
.theme-dream .card-orange .card-num,
.theme-dream .card-orange .card-tag { color: var(--dr-orange-deep); }
.theme-dream .card-orange .card-tag { background: rgba(255, 114, 98, 0.14); }

/* ============== 移动端 ============== */
@media (max-width: 720px) {
  .hero-dream { padding: 88px 18px 40px; }
  .hero-dream .title-line-emphasis { font-size: 40px; }
  .hero-dream .title-line { font-size: 22px; }
  .hero-dream .title-eyebrow { font-size: 18px; }
  .hero-dream .hero-meta {
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 24px 0;
  }
  .hero-dream .hm-item {
    flex: 0 0 auto;
    width: auto;
    align-items: center;
    text-align: center;
    gap: 8px;
  }
  .hero-dream .hm-num { font-size: 34px; line-height: 1; }
  .hero-dream .hm-unit { font-size: 11px; letter-spacing: 0.14em; }
  .hero-dream .hm-label { text-align: center; font-size: 13px; line-height: 1.6; }
  .hero-dream .hm-divider {
    width: 48px;
    height: 1px;
    background: var(--dr-border);
    align-self: center;
  }
  .hero-dream .dream-stars { opacity: 0.55; right: -80px; transform: rotate(-20deg) translateY(-20px); }
  .board-dream { padding: 32px 22px; border-radius: 18px; }
  .board-dream .board-title { font-size: 22px; }
  .board-dream .pair-grid { grid-template-columns: 1fr; }
  .board-dream .pair-vs { justify-content: center; }
  .board-dream .insight-list li { grid-template-columns: 1fr; gap: 8px; }
  .board-dream .metric-cell .metric-num { font-size: 36px; }
  .portrait-dream { max-width: 92%; }
  .portrait-frame-dream { padding: 10px 10px 0; }
  .portrait-frame-dream::before { width: 68px; left: 20px; }
  .portrait-frame-dream::after { width: 58px; right: 24px; }
  .portrait-meta-dream { padding: 12px 4px 8px; }
  .theme-dream .ending { padding: 36px 24px; }
  .theme-dream .ending-title { font-size: 24px; }
}

/* ============== 10 专属：棱镜光谱补色 class（violet / cyan / yellow） ============== */
/* big-quote-violet（章节 01、06 用） */
.board-dream .big-quote-violet {
  border-color: var(--dr-violet);
  background: linear-gradient(135deg, rgba(139, 92, 246, 0.10), rgba(139, 92, 246, 0.02));
}
.board-dream .big-quote-violet::before { color: var(--dr-violet-deep); border-color: var(--dr-violet); }

/* insight-tag 补色：violet / yellow / cyan */
.board-dream .insight-tag.tag-violet { color: var(--dr-violet-deep); border-left: 3px solid var(--dr-violet); padding-left: 8px; }
.board-dream .insight-tag.tag-yellow { color: var(--dr-yellow-deep); border-left: 3px solid var(--dr-yellow); padding-left: 8px; }
.board-dream .insight-tag.tag-cyan   { color: var(--dr-cyan-deep);   border-left: 3px solid var(--dr-cyan);   padding-left: 8px; }

/* quote-card 补色：violet / cyan / yellow */
.theme-dream .card-violet {
  background: linear-gradient(155deg, rgba(139, 92, 246, 0.14), var(--dr-panel) 60%);
  border-color: rgba(139, 92, 246, 0.30);
}
.theme-dream .card-violet .card-mark { color: rgba(139, 92, 246, 0.32); }
.theme-dream .card-violet .card-num,
.theme-dream .card-violet .card-tag { color: var(--dr-violet-deep); }
.theme-dream .card-violet .card-tag { background: rgba(139, 92, 246, 0.12); }

.theme-dream .card-cyan {
  background: linear-gradient(155deg, rgba(23, 162, 184, 0.14), var(--dr-panel) 60%);
  border-color: rgba(23, 162, 184, 0.30);
}
.theme-dream .card-cyan .card-mark { color: rgba(23, 162, 184, 0.32); }
.theme-dream .card-cyan .card-num,
.theme-dream .card-cyan .card-tag { color: var(--dr-cyan-deep); }
.theme-dream .card-cyan .card-tag { background: rgba(23, 162, 184, 0.12); }

.theme-dream .card-yellow {
  background: linear-gradient(155deg, rgba(241, 196, 15, 0.16), var(--dr-panel) 60%);
  border-color: rgba(241, 196, 15, 0.30);
}
.theme-dream .card-yellow .card-mark { color: rgba(184, 147, 10, 0.32); }
.theme-dream .card-yellow .card-num,
.theme-dream .card-yellow .card-tag { color: var(--dr-yellow-deep); }
.theme-dream .card-yellow .card-tag { background: rgba(241, 196, 15, 0.18); }

/* 10 专属：ending mantra / final-line 改用棱镜渐变 */
.theme-dream .ending-mantra {
  background: linear-gradient(135deg, rgba(139, 92, 246, 0.05), rgba(59, 130, 246, 0.05), rgba(39, 174, 96, 0.05));
  border-color: rgba(139, 92, 246, 0.25);
}
.theme-dream .ending-mantra strong { color: var(--dr-violet-deep); }
.theme-dream .ending-final-line {
  background: var(--dr-prism-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.theme-dream .ending p strong {
  background: linear-gradient(180deg, transparent 80%, rgba(241, 196, 15, 0.40) 80%);
}

/* =============================================================
 * 11 专属：深色"梦境"主题覆盖层
 * 这是 6 个专题里唯一的深色背景主题，需要重写所有浅色背景
 * 策略：保留 prism 复制来的所有结构（grid/spacing/排版），
 *      仅覆盖 background / color / border 三类视觉属性
 * ============================================================= */

/* topnav · 深底毛玻璃 */
.theme-dream .topnav {
  background: rgba(12, 10, 26, 0.70);
  border-bottom: 1px solid var(--dr-border);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
}
.theme-dream .topnav .back-link { color: var(--dr-ink-soft); }
.theme-dream .topnav .back-link:hover { color: var(--dr-violet); }
.theme-dream .topnav-capsule {
  background: rgba(192, 132, 252, 0.10);
  border-color: rgba(192, 132, 252, 0.30);
  color: var(--dr-violet);
}
.theme-dream .progress-bar {
  background: var(--dr-prism-grad);
  box-shadow: 0 0 12px var(--dr-glow);
}

/* hero · 梦境星空背景 + 紫罗兰光晕 */
.hero-dream {
  padding: 96px 32px 56px;
  background:
    radial-gradient(60% 80% at 80% 0%, rgba(192, 132, 252, 0.20) 0%, transparent 60%),
    radial-gradient(50% 70% at 0% 100%, rgba(99, 102, 241, 0.18) 0%, transparent 60%),
    radial-gradient(40% 50% at 50% 50%, rgba(240, 199, 94, 0.06) 0%, transparent 70%),
    var(--dr-bg);
  overflow: hidden;
  color: var(--dr-ink);
}
.hero-dream .hero-grid {
  background-image:
    linear-gradient(rgba(245, 243, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(245, 243, 255, 0.04) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(ellipse 80% 60% at 50% 40%, #000 30%, transparent 80%);
}
.hero-dream .hero-spotlight {
  background: radial-gradient(circle, rgba(192, 132, 252, 0.30) 0%, transparent 65%);
  filter: blur(30px);
  width: 520px; height: 520px;
}
.hero-dream .hero-tag {
  background: rgba(192, 132, 252, 0.12);
  border: 1px solid rgba(192, 132, 252, 0.35);
  color: var(--dr-violet);
}
.hero-dream .hero-tag .tag-dot {
  background: var(--dr-violet);
  box-shadow: 0 0 14px var(--dr-glow);
}
.hero-dream .title-eyebrow { color: var(--dr-gold); }
.hero-dream .title-line { color: var(--dr-ink); }
.hero-dream .title-line-emphasis {
  background: var(--dr-prism-grad);
  background-size: 200% 200%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: dr-gradient-flow 8s ease infinite;
}
@keyframes dr-gradient-flow {
  0%, 100% { background-position: 0% 50%; }
  50%      { background-position: 100% 50%; }
}

/* hero subtitle / hero-meta */
.theme-dream .hero .hero-subtitle { color: var(--dr-ink-soft); }
.theme-dream .hero .hero-subtitle strong { color: var(--dr-ink); }
.theme-dream .hero .hero-subtitle em { color: var(--dr-gold); }
.hero-dream .hero-meta {
  border-top: 1px solid var(--dr-border);
  border-bottom: 1px solid var(--dr-border);
}
.hero-dream .hm-num {
  background: var(--dr-prism-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.hero-dream .hm-num sup { color: var(--dr-gold); -webkit-text-fill-color: var(--dr-gold); }
.hero-dream .hm-unit { color: var(--dr-ink-dim); }
.hero-dream .hm-label { color: var(--dr-ink-soft); }
.hero-dream .hm-divider { background: var(--dr-border); }

/* 11 专属：梦境星屑（替代 prism-bars 视觉） */
.hero-dream .dream-stars {
  position: absolute; inset: 0;
  pointer-events: none;
  z-index: 0;
}
.hero-dream .dream-star {
  position: absolute;
  width: 4px; height: 4px;
  border-radius: 50%;
  background: #fff;
  opacity: 0;
  animation: dr-star-twinkle 4s ease-in-out infinite;
  box-shadow: 0 0 8px currentColor;
}
.hero-dream .dream-star-violet { background: var(--dr-violet); color: var(--dr-violet); }
.hero-dream .dream-star-gold   { background: var(--dr-gold);   color: var(--dr-gold); }
.hero-dream .dream-star-rose   { background: var(--dr-rose);   color: var(--dr-rose); }
.hero-dream .dream-star-cyan   { background: var(--dr-cyan);   color: var(--dr-cyan); }
.hero-dream .dream-star-blue   { background: var(--dr-blue);   color: var(--dr-blue); }
.hero-dream .dream-star-large { width: 6px; height: 6px; }
.hero-dream .dream-star-small { width: 2px; height: 2px; box-shadow: 0 0 4px currentColor; }
@keyframes dr-star-twinkle {
  0%, 100% { opacity: 0.3; transform: scale(0.8); }
  50%      { opacity: 1;   transform: scale(1.2); }
}

/* portrait（深色化） */
.theme-dream .portrait-meta-dream .portrait-name-en { color: var(--dr-ink); }
.theme-dream .portrait-meta-dream .portrait-name-cn { color: var(--dr-violet); }
.theme-dream .portrait-meta-dream .portrait-role { color: var(--dr-ink-dim); }
.theme-dream .portrait-caption {
  color: var(--dr-ink-soft);
}
.theme-dream .portrait-caption em { color: var(--dr-gold); }

/* board · 深色卡片 */
.theme-dream .board-dream {
  background: linear-gradient(160deg, var(--dr-panel) 0%, var(--dr-panel-2) 100%);
  border: 1px solid var(--dr-border);
  box-shadow:
    0 1px 0 rgba(245, 243, 255, 0.04) inset,
    0 20px 40px rgba(0, 0, 0, 0.30);
}
.theme-dream .board-dream .board-marker { color: var(--dr-violet); }
.theme-dream .board-dream .board-title { color: var(--dr-ink); }
.theme-dream .board-dream .board-title em,
.theme-dream .board-dream .board-title strong { color: var(--dr-gold); }
.theme-dream .board-dream .title-no {
  color: var(--dr-violet);
  border-right-color: rgba(192, 132, 252, 0.45);
}
.theme-dream .board-dream .board-deck {
  color: var(--dr-ink-soft);
  border-left-color: rgba(192, 132, 252, 0.30);
}
.theme-dream .board-dream .board-deck strong { color: var(--dr-ink); }
.theme-dream .board-dream .board-deck em { color: var(--dr-gold); }
.theme-dream .board-dream p { color: var(--dr-ink-soft); }
.theme-dream .board-dream p strong { color: var(--dr-ink); }
.theme-dream .board-dream p em { color: var(--dr-gold); font-style: normal; }

/* big-quote 深色化（覆盖 prism 5 色） */
.theme-dream .board-dream .big-quote {
  background: linear-gradient(135deg, rgba(192, 132, 252, 0.10), rgba(192, 132, 252, 0.02));
  border-color: var(--dr-violet);
  color: var(--dr-ink);
  box-shadow: 0 0 24px rgba(192, 132, 252, 0.12);
}
.theme-dream .board-dream .big-quote::before { color: var(--dr-violet); border-color: var(--dr-violet); }
.theme-dream .board-dream .big-quote em { color: var(--dr-gold); }
.theme-dream .board-dream .big-quote strong { color: var(--dr-ink); }
.theme-dream .board-dream .big-quote .quote-source { color: var(--dr-ink-dim); }

.theme-dream .board-dream .big-quote-violet { border-color: var(--dr-violet);  background: linear-gradient(135deg, rgba(192,132,252,0.12), rgba(192,132,252,0.02)); }
.theme-dream .board-dream .big-quote-purple { border-color: var(--dr-purple);  background: linear-gradient(135deg, rgba(139,92,246,0.12),  rgba(139,92,246,0.02)); }
.theme-dream .board-dream .big-quote-blue   { border-color: var(--dr-blue);    background: linear-gradient(135deg, rgba(147,197,253,0.12), rgba(147,197,253,0.02)); }
.theme-dream .board-dream .big-quote-green  { border-color: var(--dr-green);   background: linear-gradient(135deg, rgba(134,239,172,0.10), rgba(134,239,172,0.02)); }
.theme-dream .board-dream .big-quote-orange { border-color: var(--dr-gold);    background: linear-gradient(135deg, rgba(240,199,94,0.12),  rgba(240,199,94,0.02)); }
.theme-dream .board-dream .big-quote-red    { border-color: var(--dr-rose);    background: linear-gradient(135deg, rgba(244,114,182,0.12), rgba(244,114,182,0.02)); }
.theme-dream .board-dream .big-quote-spectrum {
  border-color: var(--dr-violet);
  background: linear-gradient(135deg, rgba(192, 132, 252, 0.12), rgba(192, 132, 252, 0.02));
}

/* callout 深色化 */
.theme-dream .board-dream .callout {
  background: rgba(192, 132, 252, 0.06);
  border: 1px dashed rgba(192, 132, 252, 0.30);
  color: var(--dr-ink-soft);
}
.theme-dream .board-dream .callout p { color: var(--dr-ink-soft); }
.theme-dream .board-dream .callout p strong { color: var(--dr-ink); }
.theme-dream .board-dream .callout p em { color: var(--dr-gold); }
.theme-dream .board-dream .callout-tag { color: var(--dr-violet); }
.theme-dream .board-dream .callout-insight {
  background: linear-gradient(135deg, rgba(240, 199, 94, 0.08), rgba(192, 132, 252, 0.04));
  border-color: rgba(240, 199, 94, 0.35);
}
.theme-dream .board-dream .callout-insight .callout-tag { color: var(--dr-gold); }

/* timeline 深色化 */
.theme-dream .board-dream .timeline-card {
  background: var(--dr-panel-2);
  border: 1px solid var(--dr-border);
}
.theme-dream .board-dream .timeline-year { color: var(--dr-violet); }
.theme-dream .board-dream .timeline-org { color: var(--dr-ink); }
.theme-dream .board-dream .timeline-desc { color: var(--dr-ink-soft); }
.theme-dream .board-dream .timeline-desc em { color: var(--dr-gold); }
.theme-dream .board-dream .timeline-desc strong { color: var(--dr-ink); }
.theme-dream .board-dream .timeline-item.highlight .timeline-card {
  background: linear-gradient(135deg, rgba(192, 132, 252, 0.10), var(--dr-panel-2));
  border-color: rgba(192, 132, 252, 0.40);
}

/* pair-grid 深色化 */
.theme-dream .board-dream .pair-cell {
  background: var(--dr-panel-2);
  border: 1px solid var(--dr-border);
}
.theme-dream .board-dream .pair-tag {
  background: rgba(192, 132, 252, 0.12);
  color: var(--dr-violet);
}
.theme-dream .board-dream .pair-title { color: var(--dr-ink); }
.theme-dream .board-dream .pair-list li { color: var(--dr-ink-soft); }
.theme-dream .board-dream .pair-list li::before { color: var(--dr-gold); }

/* metrics-row 深色化 */
.theme-dream .board-dream .metric-cell {
  background: linear-gradient(160deg, var(--dr-panel-2), var(--dr-panel-3));
  border: 1px solid var(--dr-border);
}
.theme-dream .board-dream .metric-cell .metric-num {
  background: var(--dr-prism-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.theme-dream .board-dream .metric-cell .metric-label { color: var(--dr-ink); }
.theme-dream .board-dream .metric-cell .metric-desc { color: var(--dr-ink-dim); }

/* insight-list 深色化 */
.theme-dream .board-dream .insight-list li {
  background: var(--dr-panel-2);
  border: 1px solid var(--dr-border);
}
.theme-dream .board-dream .insight-tag.tag-violet { color: var(--dr-violet);     border-left-color: var(--dr-violet); }
.theme-dream .board-dream .insight-tag.tag-purple { color: var(--dr-purple);     border-left-color: var(--dr-purple); }
.theme-dream .board-dream .insight-tag.tag-blue   { color: var(--dr-blue);       border-left-color: var(--dr-blue); }
.theme-dream .board-dream .insight-tag.tag-green  { color: var(--dr-green);      border-left-color: var(--dr-green); }
.theme-dream .board-dream .insight-tag.tag-orange { color: var(--dr-gold);       border-left-color: var(--dr-gold); }
.theme-dream .board-dream .insight-tag.tag-yellow { color: var(--dr-yellow);     border-left-color: var(--dr-yellow); }
.theme-dream .board-dream .insight-tag.tag-red    { color: var(--dr-rose);       border-left-color: var(--dr-rose); }
.theme-dream .board-dream .insight-tag.tag-cyan   { color: var(--dr-cyan);       border-left-color: var(--dr-cyan); }
.theme-dream .board-dream .insight-tag.tag-gold   { color: var(--dr-gold);       border-left-color: var(--dr-gold); padding-left: 8px; border-left-width: 3px; border-left-style: solid; }
.theme-dream .board-dream .insight-body { color: var(--dr-ink); }
.theme-dream .board-dream .insight-body strong { color: var(--dr-ink); }
.theme-dream .board-dream .insight-detail { color: var(--dr-ink-soft); }
.theme-dream .board-dream .insight-detail em { color: var(--dr-gold); }

/* quotes-section 深色化 */
.theme-dream .quotes-section {
  background: transparent;
}
.theme-dream .quotes-section-marker { color: var(--dr-violet); }
.theme-dream .quotes-section-title { color: var(--dr-ink); }
.theme-dream .quotes-section-deck { color: var(--dr-ink-soft); }
.theme-dream .quotes-section-tip { color: var(--dr-ink-dim); }

/* quote-card 深色化（重写所有色卡） */
.theme-dream .quote-card {
  background: linear-gradient(160deg, var(--dr-panel-2), var(--dr-panel));
  border: 1px solid var(--dr-border);
  color: var(--dr-ink);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.35);
}
.theme-dream .quote-card .card-bg-pattern { opacity: 0.15; }
.theme-dream .quote-card .card-num { color: var(--dr-ink-dim); }
.theme-dream .quote-card .card-mark { color: rgba(245, 243, 255, 0.10); }
.theme-dream .quote-card .card-quote-cn { color: var(--dr-ink); }
.theme-dream .quote-card .card-quote-cn strong { color: var(--dr-gold); }
.theme-dream .quote-card .card-quote-cn em { color: var(--dr-violet); font-style: normal; }
.theme-dream .quote-card .card-quote-en { color: var(--dr-ink-dim); }
.theme-dream .quote-card .card-context {
  border-top: 1px dashed var(--dr-border);
  color: var(--dr-ink-dim);
}
.theme-dream .quote-card .card-source { color: var(--dr-ink-faint); }

/* 8 张卡片各自一个梦境配色 */
.theme-dream .card-violet { background: linear-gradient(155deg, rgba(192,132,252,0.18), var(--dr-panel) 60%); border-color: rgba(192,132,252,0.35); }
.theme-dream .card-violet .card-mark { color: rgba(192,132,252,0.22); }
.theme-dream .card-violet .card-num, .theme-dream .card-violet .card-tag { color: var(--dr-violet); }
.theme-dream .card-violet .card-tag { background: rgba(192,132,252,0.18); }

.theme-dream .card-purple { background: linear-gradient(155deg, rgba(139,92,246,0.18), var(--dr-panel) 60%); border-color: rgba(139,92,246,0.35); }
.theme-dream .card-purple .card-mark { color: rgba(139,92,246,0.22); }
.theme-dream .card-purple .card-num, .theme-dream .card-purple .card-tag { color: var(--dr-purple); }
.theme-dream .card-purple .card-tag { background: rgba(139,92,246,0.18); }

.theme-dream .card-gold { background: linear-gradient(155deg, rgba(240,199,94,0.20), var(--dr-panel) 60%); border-color: rgba(240,199,94,0.40); }
.theme-dream .card-gold .card-mark { color: rgba(240,199,94,0.25); }
.theme-dream .card-gold .card-num, .theme-dream .card-gold .card-tag { color: var(--dr-gold); }
.theme-dream .card-gold .card-tag { background: rgba(240,199,94,0.20); }

.theme-dream .card-rose { background: linear-gradient(155deg, rgba(244,114,182,0.18), var(--dr-panel) 60%); border-color: rgba(244,114,182,0.35); }
.theme-dream .card-rose .card-mark { color: rgba(244,114,182,0.22); }
.theme-dream .card-rose .card-num, .theme-dream .card-rose .card-tag { color: var(--dr-rose); }
.theme-dream .card-rose .card-tag { background: rgba(244,114,182,0.18); }

.theme-dream .card-cyan { background: linear-gradient(155deg, rgba(103,232,249,0.18), var(--dr-panel) 60%); border-color: rgba(103,232,249,0.32); }
.theme-dream .card-cyan .card-mark { color: rgba(103,232,249,0.22); }
.theme-dream .card-cyan .card-num, .theme-dream .card-cyan .card-tag { color: var(--dr-cyan); }
.theme-dream .card-cyan .card-tag { background: rgba(103,232,249,0.16); }

.theme-dream .card-indigo { background: linear-gradient(155deg, rgba(99,102,241,0.18), var(--dr-panel) 60%); border-color: rgba(99,102,241,0.35); }
.theme-dream .card-indigo .card-mark { color: rgba(99,102,241,0.22); }
.theme-dream .card-indigo .card-num, .theme-dream .card-indigo .card-tag { color: var(--dr-indigo); }
.theme-dream .card-indigo .card-tag { background: rgba(99,102,241,0.18); }

.theme-dream .card-blue   { background: linear-gradient(155deg, rgba(147,197,253,0.18), var(--dr-panel) 60%); border-color: rgba(147,197,253,0.35); }
.theme-dream .card-blue .card-mark { color: rgba(147,197,253,0.22); }
.theme-dream .card-blue .card-num, .theme-dream .card-blue .card-tag { color: var(--dr-blue); }
.theme-dream .card-blue .card-tag { background: rgba(147,197,253,0.18); }

/* 模态框深色化 */
.theme-dream .modal-overlay { background: rgba(8, 6, 18, 0.85); backdrop-filter: blur(8px); }
.theme-dream .modal-content { background: var(--dr-panel); border: 1px solid var(--dr-border); }
.theme-dream .modal-close { color: var(--dr-ink-soft); }
.theme-dream .modal-close:hover { color: var(--dr-violet); }
.theme-dream .modal-counter { color: var(--dr-ink-dim); }
.theme-dream .modal-btn { background: var(--dr-panel-2); color: var(--dr-ink); border: 1px solid var(--dr-border); }
.theme-dream .modal-btn:hover:not(:disabled) { background: var(--dr-panel-3); border-color: var(--dr-violet); color: var(--dr-violet); }
.theme-dream .modal-download-btn { background: linear-gradient(135deg, var(--dr-violet), var(--dr-purple)); color: #fff; }
.theme-dream .modal-download-btn:hover { box-shadow: 0 6px 20px rgba(192, 132, 252, 0.40); }

/* references 深色化 */
.theme-dream .references {
  background: var(--dr-panel);
  border-top: 1px solid var(--dr-border);
  border-bottom: 1px solid var(--dr-border);
}
.theme-dream .references h3 { color: var(--dr-violet); }
.theme-dream .references ul li { color: var(--dr-ink-soft); border-bottom: 1px dashed var(--dr-border); }
.theme-dream .references a { color: var(--dr-blue); }
.theme-dream .references a:hover { color: var(--dr-violet); }
.theme-dream .ref-tag { background: rgba(192, 132, 252, 0.14); color: var(--dr-violet); }
.theme-dream .ref-meta { color: var(--dr-ink-dim); }

/* ending 深色梦境化 */
.theme-dream .ending {
  background:
    radial-gradient(120% 100% at 30% 0%, rgba(192, 132, 252, 0.18) 0%, transparent 55%),
    radial-gradient(80% 80% at 80% 100%, rgba(240, 199, 94, 0.10) 0%, transparent 60%),
    linear-gradient(180deg, var(--dr-panel) 0%, var(--dr-panel-2) 100%);
  border: 1px solid var(--dr-border);
  box-shadow:
    0 0 60px rgba(192, 132, 252, 0.15),
    0 30px 60px rgba(0, 0, 0, 0.40);
}
.theme-dream .ending-marker { color: var(--dr-gold); }
.theme-dream .ending-title {
  color: var(--dr-ink);
  background: var(--dr-prism-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.theme-dream .ending p { color: var(--dr-ink-soft); }
.theme-dream .ending p strong {
  color: var(--dr-ink);
  background: linear-gradient(180deg, transparent 80%, rgba(240, 199, 94, 0.30) 80%);
}
.theme-dream .ending p em { color: var(--dr-gold); }
.theme-dream .ending-mantra {
  background: linear-gradient(135deg, rgba(192, 132, 252, 0.10), rgba(244, 114, 182, 0.06));
  border-color: rgba(192, 132, 252, 0.40);
  color: var(--dr-ink);
}
.theme-dream .ending-mantra strong { color: var(--dr-gold); }
.theme-dream .ending-mantra em { color: var(--dr-violet); }
.theme-dream .ending-final-line {
  background: var(--dr-prism-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.theme-dream .ending-sub-line { color: var(--dr-ink-soft); }
.theme-dream .ending-sub-line strong { color: var(--dr-gold); }

/* 移动端 */
@media (max-width: 720px) {
  .hero-dream .dream-stars { opacity: 0.55; }

  /* 数据 stat 区移动端单列竖排，避免高度参差不齐 */
  .board-dream .metrics-row {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .board-dream .metric-mini,
  .board-dream .metric-cell {
    padding: 16px 18px;
  }

  /* 金句区 / 尾声区 / 参考资料区不能贴视口左右边缘 */
  .theme-dream .quotes-section {
    margin: 40px 16px;
    padding: 32px 22px 40px;
    border-radius: 16px;
  }
  .theme-dream .quotes-section-title { font-size: 24px; }
  .theme-dream .references {
    margin: 32px 16px 48px;
    padding: 28px 22px;
    border-radius: 14px;
  }

  /* board-dream 章节卡片在移动端收紧（参考 dream 主题没有 .board-dream 移动端规则）*/
  .board-dream { padding: 32px 22px; border-radius: 18px; }
  .board-dream .board-title { font-size: 22px; }
  .board-dream .insight-list li { grid-template-columns: 1fr; gap: 8px; }
  .board-dream .metric-cell .metric-num { font-size: 36px; }
}

/* 11 专属：tag-rose（玫瑰粉，meta 用） */
.theme-dream .board-dream .insight-tag.tag-rose {
  color: var(--dr-rose);
  border-left: 3px solid var(--dr-rose);
  padding-left: 8px;
}

/* 11 专属：timeline-dot 在深色底上的颜色覆盖 */
.theme-dream .timeline-item .timeline-dot {
  background: var(--dr-bg);
  border-color: var(--dr-violet);
  box-shadow: 0 0 0 2px rgba(192, 132, 252, 0.18), 0 0 12px rgba(192, 132, 252, 0.40);
  color: var(--dr-violet);
}
.theme-dream .timeline-item.highlight .timeline-dot {
  border-color: var(--dr-gold);
  box-shadow: 0 0 0 2px rgba(240, 199, 94, 0.20), 0 0 14px rgba(240, 199, 94, 0.55);
}

/* 11 专属：topnav 里的 back-arrow / back-text / cap-* 颜色覆盖（深底） */
.theme-dream .topnav .back-arrow,
.theme-dream .topnav .back-text { color: inherit; }
.theme-dream .topnav-capsule .cap-issue { color: var(--dr-violet); }
.theme-dream .topnav-capsule .cap-divider { color: var(--dr-ink-dim); }
.theme-dream .topnav-capsule .cap-name { color: var(--dr-ink); }

/* 11 专属：metric-num-unit 在渐变文字上的回退色 */
.theme-dream .board-dream .metric-num-unit {
  -webkit-text-fill-color: var(--dr-gold);
  background: none;
}
