/* ============================================================
   主题 29 · 紫梅流光 (Plum Blossom)
   深紫梅色透明渐变，花瓣光影如紫梅花园夜景摄影集
   ============================================================ */
:root{
  --c-bg:#100818;
  --c-bg-grad:radial-gradient(circle at 18% 14%,rgba(168,85,247,.20),transparent 45%),
              radial-gradient(circle at 82% 22%,rgba(240,171,252,.16),transparent 45%),
              radial-gradient(circle at 50% 95%,rgba(192,132,252,.13),transparent 50%),
              linear-gradient(165deg,#100818,#1c1230);
  --c-surface:rgba(30,20,46,.72);
  --c-surface-2:rgba(42,28,62,.60);
  --c-text:#f8f0ff;
  --c-muted:#b094c8;
  --c-accent:#a855f7;
  --c-accent-2:#f0abfc;
  --c-on-accent:#100818;
  --c-border:rgba(168,85,247,.16);
  --font-display:'Trebuchet MS','PingFang SC',sans-serif;
  --hero-grad:linear-gradient(115deg,#a855f7,#f0abfc 45%,#c084fc);
  --nav-bg:rgba(16,8,24,.60);
  --nav-blur:blur(18px);
  --shadow:0 22px 55px rgba(168,85,247,.30);
  --radius:18px;
}
/* 紫色光点层 —— 紫色光点随机飘浮散落 */
body::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:
    radial-gradient(2px 2px at 20px 30px,rgba(240,171,252,.7),transparent),
    radial-gradient(1.5px 1.5px at 90px 110px,rgba(168,85,247,.6),transparent),
    radial-gradient(2.5px 2.5px at 160px 60px,rgba(192,132,252,.55),transparent),
    radial-gradient(1.5px 1.5px at 220px 180px,rgba(240,171,252,.6),transparent),
    radial-gradient(2px 2px at 280px 90px,rgba(168,85,247,.5),transparent),
    radial-gradient(1.5px 1.5px at 340px 220px,rgba(192,132,252,.55),transparent),
    radial-gradient(55% 40% at 50% 8%,rgba(168,85,247,.14),transparent 70%);
  background-size:380px 280px,380px 280px,380px 280px,380px 280px,380px 280px,380px 280px,100% 100%;
  filter:blur(2px);
  animation:plumFloat 24s linear infinite;
}
@keyframes plumFloat{
  0%{background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0}
  100%{background-position:380px 280px,0 280px,380px 0,0 280px,380px 0,0 280px,0 0}
}
/* 标题：纤细字重 + 渐变流光闪烁 */
.hero h1{font-weight:300;letter-spacing:-1.5px}
.hero h1 .grad{
  background:linear-gradient(115deg,#a855f7,#f0abfc 40%,#c084fc 70%,#a855f7);
  background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;
  font-weight:800;animation:plumShimmer 7s linear infinite;
}
@keyframes plumShimmer{to{background-position:220% center}}
/* 玻璃质感卡片 */
.album-card{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(168,85,247,.18)}
.album-card:hover{box-shadow:0 0 0 1px rgba(240,171,252,.45),0 34px 70px rgba(168,85,247,.40);border-color:rgba(240,171,252,.50)}
.album-info{background:rgba(28,18,48,.50)}
.album-info h3{font-weight:600}
.album-badge{background:linear-gradient(115deg,#a855f7,#f0abfc);color:#100818;border:none}
.album-meta{border-top-color:rgba(168,85,247,.14)}
.album-meta .view{color:#f0abfc}
.section-head .kicker{background:linear-gradient(115deg,#a855f7,#f0abfc);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:5px}
.about-visual{background:linear-gradient(135deg,#3a1666,#a855f7 45%,#f0abfc);background-size:200% auto;animation:plumShimmer 9s linear infinite;box-shadow:0 0 60px rgba(168,85,247,.40)}
.eyebrow{background:linear-gradient(115deg,#a855f7,#f0abfc,#c084fc) !important;color:#100818 !important;letter-spacing:3px}
.btn.primary{background:linear-gradient(115deg,#a855f7,#f0abfc);color:#100818;box-shadow:0 12px 30px rgba(168,85,247,.45)}
.btn.ghost{background:rgba(255,255,255,.05);color:#f8f0ff;border-color:rgba(168,85,247,.22)}
.divider{background:linear-gradient(115deg,#a855f7,#f0abfc)}
.footer{background:#080410;border-top:1px solid rgba(168,85,247,.10)}
.logo-mark{box-shadow:0 6px 24px rgba(168,85,247,.55)}
.nav-menu a:hover{color:#a855f7;background:rgba(168,85,247,.10)}
.ts-swatch.ts-plum{background:linear-gradient(135deg,#a855f7,#c084fc,#f0abfc)}
.shape.s1{background:#a855f7 !important;opacity:.22 !important}
.shape.s2{background:#f0abfc !important;opacity:.20 !important}
