/* ============================================================
   学途点点 · home-v4.css ——「朱卷琉璃 · 金榜」主页 v4
   ------------------------------------------------------------
   设计语言:中考祝福 × 数据底气。
   · 签名件:标题内嵌「翻牌祝福词」(#auBlessWord) + 滚动计数位次数(#auNum),
     一句话同时承载祝福与专业(动效由 js/home.js 驱动,零新增 JS)。
   · 琉璃:玻璃卡(.hv-glass)统一 18px 模糊 + 主题色描金边。
   · 极光:.au-sky 三团红→金柔光,滚动时 hue-rotate 红转金(js/home.js ⑥)。
   · 进场:.au-reveal 渐显;顶部 #auPbar 红金进度条(js/home.js ⑤)。
   全部颜色取主题令牌(--pine/--ph 由 theme.js 驱动),换肤即换色。
   本文件最后加载,覆盖 home.css / home-aurora.css 旧规则。
   ============================================================ */

[data-page="home"]{position:relative;overflow:hidden}

/* —— 极光底:红霞为主、一抹金,滚动转金(js 写 filter:hue-rotate) —— */
[data-page="home"] .au-sky{position:absolute;inset:0;z-index:0;pointer-events:none;
  filter:none;transition:filter .2s linear;opacity:.6}
[data-page="home"] .au-sky i{position:absolute;border-radius:50%;mix-blend-mode:multiply;
  filter:blur(64px) saturate(1.2);animation:hvFloat 20s ease-in-out infinite alternate}
[data-page="home"] .au-sky .s1{width:580px;height:560px;left:-140px;top:-180px;
  background:radial-gradient(circle at 36% 36%,hsl(var(--ph) 82% 78%),transparent 64%)}
[data-page="home"] .au-sky .s2{width:540px;height:520px;right:-150px;top:40px;animation-duration:25s;animation-delay:-7s;
  background:radial-gradient(circle at 60% 40%,hsl(36 92% 80%),transparent 64%)}
[data-page="home"] .au-sky .s3{width:660px;height:640px;left:30%;top:380px;animation-duration:29s;animation-delay:-13s;
  background:radial-gradient(circle at 50% 50%,hsl(var(--ph) 66% 88%),transparent 62%)}
@keyframes hvFloat{to{transform:translate(46px,38px) scale(1.07)}}

[data-page="home"] .hv-wrap{position:relative;z-index:1}

/* —— 顶部滚动进度条(#auPbar 由 js/home.js 注入 body,仅主页激活时可见) —— */
#auPbar{position:fixed;left:0;top:0;height:3px;width:0;z-index:1200;pointer-events:none;
  background:linear-gradient(90deg,var(--pine),hsl(40 86% 56%));border-radius:0 3px 3px 0;
  box-shadow:0 1px 6px rgba(var(--pine-rgb,194,69,45),.45);opacity:0;transition:opacity .25s ease}

/* —— 玻璃公共件 —— */
[data-page="home"] .hv-glass{position:relative;background:rgba(255,255,255,.6);
  backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);
  border:1px solid rgba(255,255,255,.78);border-radius:18px;
  box-shadow:0 10px 36px rgba(var(--pine-dark-rgb,120,30,24),.10)}
[data-page="home"] .hv-glass::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(155deg,rgba(var(--pine-rgb,194,69,45),.4),transparent 44%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:.75}

/* —— 进场渐显(js/home.js ③) —— */
[data-page="home"] .au-reveal{opacity:0;transform:translateY(16px);
  transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
[data-page="home"] .au-reveal.in{opacity:1;transform:none}
[data-page="home"] .au-reveal.d1{transition-delay:.08s}
[data-page="home"] .au-reveal.d2{transition-delay:.16s}
[data-page="home"] .au-reveal.d3{transition-delay:.24s}

/* —— HERO —— */
[data-page="home"] .hv-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:46px;align-items:center;padding:54px 0 26px}
[data-page="home"] .hv-kicker{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;
  letter-spacing:1px;color:var(--pine-dark)}
[data-page="home"] .hv-kicker .seal-mini{width:24px;height:24px;border-radius:7px;
  background:linear-gradient(135deg,var(--pine),var(--pine-dark));color:#fff;display:grid;place-items:center;
  font-family:"Noto Serif SC",serif;font-size:13px;box-shadow:0 3px 10px rgba(var(--pine-rgb,194,69,45),.4)}
[data-page="home"] .hv-no{font-family:var(--mono,ui-monospace,monospace);font-size:10.5px;letter-spacing:3px;
  color:var(--muted);font-weight:400;margin-left:4px}

[data-page="home"] .hv-title{font-family:"Noto Serif SC",serif;font-weight:900;color:var(--ink);
  font-size:clamp(31px,4.3vw,47px);line-height:1.34;margin:18px 0 14px}
/* 签名件①:翻牌祝福词——朱底烫金牌,翻面换词(js/home.js ②) */
[data-page="home"] #auBlessWord{display:inline-block;font-style:normal;color:#fff;
  background:linear-gradient(135deg,var(--pine) 0%,var(--pine-dark) 100%);
  border-radius:13px;padding:1px 16px 3px;margin:0 4px;position:relative;
  box-shadow:0 8px 22px rgba(var(--pine-rgb,194,69,45),.38),inset 0 1px 0 rgba(255,255,255,.28);
  transform-origin:50% 100%;transition:transform .32s ease,opacity .32s ease}
[data-page="home"] #auBlessWord::after{content:"";position:absolute;inset:4px;border-radius:9px;
  border:1px dashed rgba(255,236,200,.65);pointer-events:none}
[data-page="home"] #auBlessWord.flip{transform:rotateX(86deg);opacity:0}
/* 签名件②:滚动计数的位次数,金底高亮 */
[data-page="home"] .hv-num{font-style:normal;font-family:"DM Mono",ui-monospace,monospace;
  color:var(--pine-dark);font-variant-numeric:tabular-nums;padding:0 4px;
  background:linear-gradient(transparent 60%,hsl(40 86% 86%) 60%)}

[data-page="home"] .hv-sub{font-size:14.5px;line-height:1.95;color:var(--ink-soft);max-width:600px}
[data-page="home"] .hv-sub b{color:var(--ink)}
[data-page="home"] .hv-bless{margin-top:12px;font-size:13.5px;line-height:1.9;color:var(--pine-dark);max-width:600px;
  background:linear-gradient(90deg,hsl(var(--ph) 70% 96%),transparent 90%);
  border-left:3px solid var(--pine);border-radius:0 10px 10px 0;padding:9px 14px}

[data-page="home"] .hv-cta{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
[data-page="home"] .hv-btn{border:none;border-radius:12px;font-size:14.5px;font-weight:700;
  padding:13px 24px;cursor:pointer;font-family:var(--sans);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
[data-page="home"] .hv-btn.main{color:#fff;position:relative;overflow:hidden;
  background:linear-gradient(120deg,var(--pine) 0%,var(--pine-dark) 100%);
  box-shadow:0 8px 24px rgba(var(--pine-rgb,194,69,45),.4)}
[data-page="home"] .hv-btn.main::after{content:"";position:absolute;top:0;bottom:0;width:46px;left:-70px;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);
  transform:skewX(-18deg);animation:hvSheen 4.6s ease-in-out infinite}
@keyframes hvSheen{0%,62%{left:-70px}82%,100%{left:130%}}
[data-page="home"] .hv-btn.main:hover{transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(var(--pine-rgb,194,69,45),.5)}
[data-page="home"] .hv-btn.ghost{background:rgba(255,255,255,.7);color:var(--pine-dark);
  border:1.5px solid var(--pine-border);backdrop-filter:blur(8px)}
[data-page="home"] .hv-btn.ghost:hover{transform:translateY(-2px);background:#fff}

[data-page="home"] .hv-stats{display:flex;gap:0;margin-top:30px;flex-wrap:wrap;
  border-top:1px solid var(--line);padding-top:16px}
[data-page="home"] .hv-stat{padding:0 16px 0 0;margin-right:16px;border-right:1px solid var(--line)}
[data-page="home"] .hv-stat:last-child{border-right:none;margin-right:0}
[data-page="home"] .hv-stat b{display:block;font-family:"DM Mono",ui-monospace,monospace;font-size:20px;
  color:var(--ink);font-variant-numeric:tabular-nums}
[data-page="home"] .hv-stat span{font-size:11.5px;color:var(--muted)}

/* —— HERO 右:放榜预览卡 —— */
[data-page="home"] .hv-right{position:relative}
[data-page="home"] .hv-card{padding:20px 22px;transform:rotate(.6deg);transition:transform .35s ease}
[data-page="home"] .hv-card:hover{transform:rotate(0) translateY(-3px)}
[data-page="home"] .hvc-head{display:flex;align-items:center;gap:7px;font-size:11.5px;letter-spacing:2px;
  color:var(--muted);font-weight:700;margin-bottom:10px}
[data-page="home"] .hvc-head .dot{width:8px;height:8px;border-radius:50%;background:var(--pine);
  box-shadow:0 0 0 4px rgba(var(--pine-rgb,194,69,45),.18);animation:hvPulse 2.4s ease-in-out infinite}
@keyframes hvPulse{50%{box-shadow:0 0 0 7px rgba(var(--pine-rgb,194,69,45),.08)}}
[data-page="home"] .hvc-you{font-size:13.5px;color:var(--ink);background:hsl(var(--ph) 70% 96%);
  border-radius:9px;padding:8px 12px;margin-bottom:12px}
[data-page="home"] .hvc-you b{font-family:"DM Mono",monospace;color:var(--pine-dark)}
[data-page="home"] .hvc-row{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:10px;transition:background .2s}
[data-page="home"] .hvc-row.on{background:rgba(255,255,255,.85);border:1px solid var(--pine-border);
  box-shadow:0 4px 14px rgba(var(--pine-rgb,194,69,45),.12)}
[data-page="home"] .hvc-row.dim{opacity:.66}
[data-page="home"] .hvc-row .d{width:10px;height:10px;border-radius:50%;flex:none}
[data-page="home"] .hvc-row .d.r{background:var(--gold,#C8930F)}
[data-page="home"] .hvc-row .d.s{background:var(--pine);box-shadow:0 0 0 2px #fff,0 0 0 3px var(--pine)}
[data-page="home"] .hvc-row .d.b{background:var(--slate,#3F6CB5)}
[data-page="home"] .hvc-row .m{flex:1;min-width:0}
[data-page="home"] .hvc-row .m b{display:block;font-size:13.5px}
[data-page="home"] .hvc-row .m small{font-size:11px;color:var(--muted)}
[data-page="home"] .hvc-row .n{font-family:"DM Mono",monospace;font-size:16px;font-weight:600;color:var(--ink)}
[data-page="home"] .hvc-row .n small{font-size:11px;color:var(--muted)}
[data-page="home"] .hvc-axis{margin-top:8px;border-top:1px dashed var(--line);padding-top:8px}
[data-page="home"] .hvc-axis svg{width:100%;height:42px;display:block}
[data-page="home"] .hvc-cap{font-size:11px;color:var(--muted);text-align:center;margin-top:2px}
[data-page="home"] .hvc-foot{display:flex;justify-content:space-between;margin-top:10px;font-size:10.5px;color:var(--muted-2)}
[data-page="home"] .hvc-foot i{font-style:normal}
/* 玻璃朱印 */
[data-page="home"] .hv-seal{position:absolute;right:-8px;bottom:-16px;width:86px;height:86px;border-radius:50%;
  border:2.5px solid rgba(var(--pine-rgb,194,69,45),.55);color:var(--pine-dark);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-family:"Noto Serif SC",serif;font-weight:900;font-size:14px;transform:rotate(-12deg);
  background:rgba(255,255,255,.5);backdrop-filter:blur(6px)}
[data-page="home"] .hv-seal::before{content:"";position:absolute;inset:6px;border-radius:50%;
  border:1.5px dashed rgba(var(--pine-rgb,194,69,45),.5)}
[data-page="home"] .hv-seal small{font-size:9px;font-weight:400;letter-spacing:2px;margin-top:2px}

/* —— 口径细带 —— */
[data-page="home"] .hv-tick{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;margin:22px 0 8px;
  padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12.5px;color:var(--muted)}
[data-page="home"] .hv-tick i{font-style:normal;position:relative;padding-left:14px}
[data-page="home"] .hv-tick i::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:6px;height:6px;border-radius:50%;background:var(--pine)}

/* —— 区块标题 —— */
[data-page="home"] .hv-sec{margin-top:54px}
[data-page="home"] .hv-h2{font-family:"Noto Serif SC",serif;font-size:24px;font-weight:900;color:var(--ink);
  display:flex;align-items:baseline;gap:12px;margin:0}
[data-page="home"] .hv-h2 .en{font-family:var(--mono,monospace);font-size:10.5px;letter-spacing:4px;
  color:var(--pine);font-weight:500}
[data-page="home"] .hv-rule{height:3px;width:64px;border-radius:2px;
  background:linear-gradient(90deg,var(--pine),hsl(40 80% 60%) 80%,transparent);margin:10px 0 22px}

/* —— 四步(真实流程,序号承载信息) —— */
[data-page="home"] .hv-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
[data-page="home"] .hv-step{padding:18px 18px 16px;transition:transform .25s ease,box-shadow .25s ease}
[data-page="home"] .hv-step:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(var(--pine-rgb,194,69,45),.16)}
[data-page="home"] .hv-step .no{font-family:"DM Mono",monospace;font-size:12px;color:var(--pine);letter-spacing:2px}
[data-page="home"] .hv-step b{display:block;font-size:15px;margin:7px 0 6px;color:var(--ink)}
[data-page="home"] .hv-step p{font-size:12.5px;line-height:1.8;color:var(--muted);margin:0}

/* —— 模块便当格 —— */
[data-page="home"] .hv-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
[data-page="home"] .hv-feat{text-align:left;padding:18px;cursor:pointer;font-family:inherit;
  transition:transform .25s ease,box-shadow .25s ease}
[data-page="home"] .hv-feat:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(var(--pine-rgb,194,69,45),.18)}
[data-page="home"] .hv-feat.big{grid-row:span 2;display:flex;flex-direction:column}
[data-page="home"] .hv-feat .tag{align-self:flex-start;font-size:10.5px;font-weight:700;color:#fff;
  background:linear-gradient(120deg,var(--pine),var(--pine-dark));border-radius:999px;padding:2px 10px;
  margin-bottom:10px;letter-spacing:1px}
[data-page="home"] .hv-feat .fi{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;
  font-family:"Noto Serif SC",serif;font-weight:900;font-size:15px;background:hsl(var(--ph) 70% 94%);
  color:var(--pine-dark);margin-bottom:9px}
[data-page="home"] .hv-feat b{display:block;font-size:15.5px;color:var(--ink)}
[data-page="home"] .hv-feat p{font-size:12.5px;line-height:1.8;color:var(--muted);margin:6px 0 0}
[data-page="home"] .hv-feat.big svg{width:100%;margin-top:auto;padding-top:14px}

/* —— 口径宣言:墨红玻璃暗板 + 朱印 —— */
[data-page="home"] .hv-creed{position:relative;border-radius:22px;padding:32px 36px 28px;color:#fff;overflow:hidden;
  background:linear-gradient(155deg,color-mix(in srgb,var(--ink) 96%,#000),color-mix(in srgb,var(--ink) 78%,var(--pine)));
  box-shadow:var(--shadow-lift)}
[data-page="home"] .hv-creed::before{content:"口径";position:absolute;right:-26px;bottom:-58px;
  font-family:"Noto Serif SC",serif;font-weight:900;font-size:190px;line-height:1;color:#fff;opacity:.05;letter-spacing:8px}
[data-page="home"] .hv-creed .hk{font-family:var(--mono,monospace);font-size:10.5px;letter-spacing:4px;
  color:color-mix(in srgb,#fff 60%,hsl(40 80% 70%))}
[data-page="home"] .hv-creed .ht{font-family:"Noto Serif SC",serif;font-weight:900;font-size:22px;margin:8px 0 18px}
[data-page="home"] .hv-creed .hg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 30px;position:relative;z-index:1}
[data-page="home"] .hv-creed .hi{border-left:2px solid color-mix(in srgb,#fff 26%,transparent);padding-left:14px}
[data-page="home"] .hv-creed .hi b{display:block;font-family:"Noto Serif SC",serif;font-size:15.5px;letter-spacing:.5px}
[data-page="home"] .hv-creed .hi p{font-size:12.5px;line-height:1.85;color:color-mix(in srgb,#fff 76%,transparent);margin:5px 0 0}
[data-page="home"] .hv-creed .hv-seal{right:26px;top:18px;bottom:auto;width:80px;height:80px;font-size:13px;
  color:#ff9b84;border-color:rgba(255,155,132,.8);background:transparent;backdrop-filter:none}
[data-page="home"] .hv-creed .hv-seal::before{border-color:rgba(255,155,132,.55)}
[data-page="home"] .hv-disclaim{margin:18px 0 40px;font-size:11.5px;line-height:1.8;color:var(--muted-2);text-align:center}

@media (max-width: 920px){
  [data-page="home"] .hv-hero{grid-template-columns:1fr;gap:30px}
  [data-page="home"] .hv-steps{grid-template-columns:1fr 1fr}
  [data-page="home"] .hv-feats{grid-template-columns:1fr 1fr}
  [data-page="home"] .hv-creed .hg{grid-template-columns:1fr}
  [data-page="home"] .hv-creed .hv-seal{display:none}
}
@media (max-width: 560px){
  [data-page="home"] .hv-steps,[data-page="home"] .hv-feats{grid-template-columns:1fr}
  [data-page="home"] .hv-stat{border-right:none;margin-right:0;width:50%;padding:6px 0}
  [data-page="home"] .hv-title{font-size:29px}
}
@media (prefers-reduced-motion: reduce){
  [data-page="home"] .au-sky i,[data-page="home"] .hv-btn.main::after,
  [data-page="home"] .hvc-head .dot{animation:none}
  [data-page="home"] .au-reveal{opacity:1;transform:none;transition:none}
}

/* ── 2026-06-11 · 首屏「考生定位」卡升级版(hvc2):专业估线区间图 + 喜庆红金点缀 ── */
[data-page="home"] .hvc2 .hvc-head{position:relative}
[data-page="home"] .hvc2-seal{margin-left:auto;font-size:10.5px;letter-spacing:3px;padding:2px 9px 2px 12px;
  border-radius:999px;color:#fff;font-family:"Noto Serif SC",serif;
  background:linear-gradient(120deg,var(--pine),hsl(40 86% 48%));
  box-shadow:0 2px 8px rgba(var(--pine-rgb,194,69,45),.35)}
[data-page="home"] .hvc2-chart{margin:10px 0 6px;padding:6px 4px 2px;border-radius:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,.5));
  border:1px solid rgba(var(--pine-rgb,194,69,45),.14)}
[data-page="home"] .hvc2-chart svg{display:block;width:100%;height:auto}
[data-page="home"] .hvc2 .hvc-cap{margin-top:6px;font-size:10.5px;color:var(--slate);text-align:center}

/* ════ 2026-06-12 · 主页动效升级(参考 Stripe/Linear 的克制微交互;全部尊重 prefers-reduced-motion) ════ */

/* ① 标题金底「助力」:缓慢流光扫过 */
[data-page="home"] .hv-title .hv-num{position:relative;overflow:hidden;border-radius:6px}
[data-page="home"] .hv-title .hv-num::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.55) 50%,transparent 62%);
  background-size:240% 100%;animation:hvShine 5.2s ease-in-out infinite}
@keyframes hvShine{0%,55%{background-position:130% 0}90%,100%{background-position:-130% 0}}

/* ② 章节金线:进入视口从左生长 */
[data-page="home"] .hv-sec .hv-rule{transform:scaleX(0);transform-origin:left;
  transition:transform .9s cubic-bezier(.22,1,.36,1) .1s}
[data-page="home"] .hv-sec.in .hv-rule{transform:scaleX(1)}

/* ③ 步骤/模块/信条卡:随父级 .in 依次上浮入场 + 悬停轻抬 */
[data-page="home"] .hv-step,[data-page="home"] .hv-feat,[data-page="home"] .hi{
  opacity:0;transform:translateY(16px);
  transition:opacity .6s ease,transform .7s cubic-bezier(.22,1,.36,1),box-shadow .3s ease}
[data-page="home"] .au-reveal.in .hv-step,[data-page="home"] .au-reveal.in .hv-feat,
[data-page="home"] .au-reveal.in .hi{opacity:1;transform:none}
[data-page="home"] .au-reveal.in :is(.hv-step,.hv-feat,.hi):nth-child(2){transition-delay:.08s}
[data-page="home"] .au-reveal.in :is(.hv-step,.hv-feat,.hi):nth-child(3){transition-delay:.16s}
[data-page="home"] .au-reveal.in :is(.hv-step,.hv-feat,.hi):nth-child(4){transition-delay:.24s}
[data-page="home"] .au-reveal.in :is(.hv-step,.hv-feat,.hi):nth-child(5){transition-delay:.32s}
[data-page="home"] .au-reveal.in :is(.hv-step,.hv-feat,.hi):nth-child(6){transition-delay:.40s}
[data-page="home"] .au-reveal.in :is(.hv-step,.hv-feat,.hi):nth-child(7){transition-delay:.48s}
[data-page="home"] .hv-step:hover,[data-page="home"] .hv-feat:hover{transform:translateY(-4px);
  box-shadow:0 14px 34px rgba(var(--pine-dark-rgb,120,30,24),.12)}
[data-page="home"] .hv-feat .fi{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
[data-page="home"] .hv-feat:hover .fi{transform:rotate(-6deg) scale(1.08)}

/* ④ 首屏示例卡:指针视差倾斜(JS 写 --rx/--ry)+ 图表入场编排 */
[data-page="home"] .hvc2{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) rotate(.6deg);
  transition:transform .25s ease,box-shadow .3s ease;will-change:transform}
[data-page="home"] .hvc2:hover{box-shadow:0 18px 50px rgba(var(--pine-dark-rgb,120,30,24),.16)}
/* 入场前的初始态 */
[data-page="home"] .hvc2-chart .zone{opacity:0;transition:opacity .7s ease}
[data-page="home"] .hvc2-chart .iv{transform:scaleX(0);transform-box:fill-box;transform-origin:left center;
  transition:transform .8s cubic-bezier(.22,1,.36,1)}
[data-page="home"] .hvc2-chart .dt{transform:scale(0);transform-box:fill-box;transform-origin:center;
  transition:transform .55s cubic-bezier(.34,1.56,.64,1)}
[data-page="home"] .hvc2-chart .you-line{stroke-dasharray:3 3;stroke-dashoffset:120;opacity:0;
  transition:stroke-dashoffset 1.1s ease,opacity .4s ease}
[data-page="home"] .hvc2-chart .you-flag{opacity:0;transform:translateY(-6px);transform-box:fill-box;
  transition:opacity .5s ease,transform .5s cubic-bezier(.34,1.56,.64,1)}
[data-page="home"] .hvc2 .hvc-row{opacity:0;transform:translateX(10px);
  transition:opacity .55s ease,transform .6s cubic-bezier(.22,1,.36,1)}
/* 入场后(JS 在卡片进入视口时加 .chart-in) */
[data-page="home"] .hvc2.chart-in .zone{opacity:1}
[data-page="home"] .hvc2.chart-in .zone.z2{transition-delay:.12s}
[data-page="home"] .hvc2.chart-in .zone.z3{transition-delay:.24s}
[data-page="home"] .hvc2.chart-in .iv{transform:scaleX(1)}
[data-page="home"] .hvc2.chart-in .iv1{transition-delay:.55s}
[data-page="home"] .hvc2.chart-in .iv2{transition-delay:.40s}
[data-page="home"] .hvc2.chart-in .iv3{transition-delay:.70s}
[data-page="home"] .hvc2.chart-in .dt{transform:scale(1)}
[data-page="home"] .hvc2.chart-in .dt1{transition-delay:.95s}
[data-page="home"] .hvc2.chart-in .dt2{transition-delay:.80s}
[data-page="home"] .hvc2.chart-in .dt3{transition-delay:1.1s}
[data-page="home"] .hvc2.chart-in .you-line{stroke-dashoffset:0;opacity:1;transition-delay:.30s}
[data-page="home"] .hvc2.chart-in .you-flag{opacity:1;transform:none;transition-delay:1.25s}
[data-page="home"] .hvc2.chart-in .hvc-row{opacity:1;transform:none}
[data-page="home"] .hvc2.chart-in .hvc-row{transition-delay:1.0s}
[data-page="home"] .hvc2.chart-in .hvc-row.on{transition-delay:1.12s}
[data-page="home"] .hvc2.chart-in .hvc-row.dim{transition-delay:1.24s}
/* 常规预测线锚点:入场后轻微呼吸,引导视线 */
[data-page="home"] .hvc2.chart-in .dt2{animation:hvPulse 3.4s ease-in-out 2.2s infinite}
@keyframes hvPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.18)}}

/* ⑤ 金榜印签:微微摇曳 */
[data-page="home"] .hvc2-seal{animation:hvSway 5.6s ease-in-out infinite;transform-origin:center}
@keyframes hvSway{0%,100%{transform:rotate(-1.2deg)}50%{transform:rotate(1.6deg)}}

/* ⑥ 主 CTA:悬停磁吸微移 + 箭头滑出 */
[data-page="home"] .hv-btn.main{transition:transform .25s ease,box-shadow .3s ease}
[data-page="home"] .hv-btn.main:hover{transform:translateY(-2px) scale(1.015)}

/* ⑦ prefers-reduced-motion:全部动效直达终态 */
@media (prefers-reduced-motion: reduce){
  [data-page="home"] .hv-title .hv-num::after,[data-page="home"] .hvc2-seal,
  [data-page="home"] .hvc2.chart-in .dt2{animation:none}
  [data-page="home"] .hv-sec .hv-rule{transform:scaleX(1);transition:none}
  [data-page="home"] .hv-step,[data-page="home"] .hv-feat,[data-page="home"] .hi,
  [data-page="home"] .hvc2-chart .zone,[data-page="home"] .hvc2-chart .iv,
  [data-page="home"] .hvc2-chart .dt,[data-page="home"] .hvc2-chart .you-line,
  [data-page="home"] .hvc2-chart .you-flag,[data-page="home"] .hvc2 .hvc-row{
    opacity:1;transform:none;stroke-dashoffset:0;transition:none}
  [data-page="home"] .hvc2{transform:rotate(.6deg)}
}

/* 覆盖旧 .hv-card:hover 的 transform,避免吃掉指针倾斜 */
[data-page="home"] .hv-card.hvc2:hover{
  transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-3px)}
@media (prefers-reduced-motion: reduce){
  [data-page="home"] .hv-card.hvc2:hover{transform:rotate(0) translateY(-3px)}
}
