/* ============================================================
   QIANLONG BESPOKE — 02 Gradient System
   一套有节制的渐变词汇：只做"光照"，不做"彩虹"。
   - 浅色区：whisper 渐变（顶部光）
   - 深色锚点：ink 渐变 + 一处绿色 aura（全站仅此一处用彩色光）
   - 行动色保持纯平绿色，不做渐变（纪律）
   ============================================================ */

/* ---------- 浅色区块：whisper ---------- */
.g-whisper{
  background:linear-gradient(180deg,var(--wash-0) 0%,var(--wash-1) 62%,var(--wash-2) 100%);
}
.g-whisper-soft{
  background:linear-gradient(180deg,#ffffff 0%,var(--wash-0) 55%,var(--wash-1) 100%);
}
.g-card{
  background:linear-gradient(180deg,#fbfbfc 0%,var(--wash-1) 100%);
}
.g-card-hover{
  background:linear-gradient(180deg,#ffffff 0%,var(--wash-1) 70%,var(--wash-2) 100%);
}
/* 卡片顶部光：hover 时出现的一道柔光 */
.g-card{
  position:relative;
}
.g-card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.9) 0%,rgba(255,255,255,0) 38%);
  opacity:0;transition:opacity var(--dur-1) var(--ease);
}
.g-card:hover::before{opacity:1;}

/* ---------- 深色锚点：ink ---------- */
.g-ink{
  background:
    radial-gradient(120% 90% at 18% 0%,rgba(34,197,94,.14) 0%,rgba(34,197,94,0) 55%),
    radial-gradient(100% 80% at 85% 100%,rgba(120,130,255,.06) 0%,rgba(120,130,255,0) 50%),
    linear-gradient(165deg,var(--night-0) 0%,var(--night-1) 52%,var(--night-2) 100%);
  color:var(--night-text);
}
.g-ink-deep{
  background:
    radial-gradient(90% 70% at 50% -10%,rgba(34,197,94,.10) 0%,rgba(34,197,94,0) 60%),
    linear-gradient(180deg,#101014 0%,var(--night-2) 100%);
  color:var(--night-text);
}

/* ---------- CTA band：深墨 + 绿色光边 ---------- */
.g-cta{
  background:
    radial-gradient(70% 120% at 12% 20%,rgba(34,197,94,.22) 0%,rgba(34,197,94,0) 55%),
    linear-gradient(115deg,#0d1117 0%,#151a24 48%,#0f2c20 100%);
  color:#fff;
  position:relative;overflow:hidden;
}
.g-cta::after{ /* 顶部 1px 光线 */
  content:"";position:absolute;top:0;left:8%;right:8%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
}

/* ---------- 渐变分隔线 ---------- */
.g-hairline{
  border:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--hairline) 18%,var(--hairline) 82%,transparent);
}
.g-hairline-fade{
  border:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,0,0,.14),transparent);
}

/* ---------- Hero 电影感渐变罩 ---------- */
.g-scrim-b{
  background:linear-gradient(180deg,rgba(8,10,14,0) 40%,rgba(8,10,14,.38) 78%,rgba(8,10,14,.62) 100%);
}
.g-scrim-l{
  background:linear-gradient(100deg,rgba(8,10,14,.55) 0%,rgba(8,10,14,.18) 45%,rgba(8,10,14,0) 70%);
}
.g-scrim-top{
  background:linear-gradient(180deg,rgba(8,10,14,.42) 0%,rgba(8,10,14,0) 22%);
}

/* ---------- 图片内部柔光 ---------- */
.g-photo{
  position:relative;
}
.g-photo::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,0) 30%);
  mix-blend-mode:soft-light;
}

/* ---------- 分支页头：纸面呼吸 ---------- */
.g-pagehead{
  background:
    radial-gradient(60% 100% at 50% 0%,rgba(255,255,255,.9) 0%,rgba(255,255,255,0) 70%),
    linear-gradient(180deg,var(--wash-0) 0%,#ffffff 100%);
}
