.page-home{
  --home-cut:18px;
  --home-gap:clamp(16px,2.4vw,28px);
  display:block;
}

.page-home .container{
  width:100%;
  max-width:var(--max-w);
  margin:0 auto;
  padding-inline:var(--gutter);
}

/* ---------- 通用块 ---------- */
.page-home .home-section{
  position:relative;
  padding-block:clamp(40px,6vw,80px);
}

.page-home .home-head{
  max-width:760px;
  margin-bottom:clamp(20px,3vw,34px);
}

.page-home .home-head h2{
  margin:12px 0 14px;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(24px,4.4vw,40px);
  line-height:1.16;
  letter-spacing:-.01em;
  color:var(--c-paper);
}

.page-home .home-head p{
  margin:0;
  font-family:var(--font-body);
  font-size:clamp(15px,1.7vw,17px);
  line-height:1.85;
  color:var(--ink-2);
}

.page-home .cut-panel{
  padding:clamp(16px,2.4vw,26px);
  background:linear-gradient(160deg, rgba(18,60,105,.92) 0%, rgba(7,26,51,.96) 100%);
  border:1px solid var(--line);
  clip-path:polygon(0 0, calc(100% - var(--home-cut)) 0, 100% var(--home-cut), 100% 100%, 0 100%);
}

.page-home .panel-title{
  margin:0 0 12px;
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(16px,2.2vw,20px);
  line-height:1.3;
  color:var(--c-paper);
}

.page-home .media-frame{
  position:relative;
  margin:0;
  overflow:hidden;
  border:1px solid var(--line);
  background:var(--c-navy);
}

.page-home .media-frame img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
}

.page-home .media-frame__cap{
  display:block;
  padding:10px 14px;
  font-family:var(--font-ui);
  font-size:12px;
  line-height:1.6;
  color:var(--ink-dim);
  background:rgba(7,26,51,.85);
  border-top:1px solid var(--line-soft);
}

.page-home .tag{
  font-size:11px;
  letter-spacing:.04em;
}

/* ---------- 首屏 ---------- */
.page-home .home-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding-block:clamp(26px,5vw,68px) clamp(34px,6vw,84px);
}

.page-home .home-hero__wash{
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(118deg, rgba(11,37,69,0) 0 45%, rgba(18,60,105,.62) 45% 100%),
    radial-gradient(65% 80% at 88% 6%, rgba(40,224,200,.12), transparent 68%),
    linear-gradient(180deg, rgba(7,26,51,0), rgba(7,26,51,.9));
  clip-path:polygon(0 0, 100% 0, 100% 82%, 0 100%);
}

.page-home .home-hero__wash svg{
  position:absolute;
  inset:auto 0 0 0;
  width:100%;
  height:70%;
  opacity:.9;
}

.page-home .home-hero__wash::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(143,166,191,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(143,166,191,.07) 1px, transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:linear-gradient(180deg, #000, transparent 88%);
  mask-image:linear-gradient(180deg, #000, transparent 88%);
}

.page-home .home-hero__inner{
  position:relative;
  display:grid;
  gap:clamp(26px,4vw,48px);
  align-items:center;
}

.page-home .home-hero__copy h1{
  margin:14px 0 18px;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(32px,6.4vw,66px);
  line-height:1.06;
  letter-spacing:-.015em;
  color:var(--c-paper);
  text-shadow:0 18px 40px rgba(7,26,51,.6);
}

.page-home .home-hero__lead{
  margin:0;
  max-width:54ch;
  font-family:var(--font-body);
  font-size:clamp(15px,1.9vw,18px);
  line-height:1.9;
  color:var(--ink-2);
}

.page-home .home-hero__tasks{
  list-style:none;
  margin:clamp(22px,3vw,32px) 0 0;
  padding:0;
  display:grid;
  gap:12px;
}

.page-home .task-card{
  display:grid;
  gap:6px;
  padding:16px 18px 18px;
  background:linear-gradient(158deg, rgba(18,60,105,.88), rgba(11,37,69,.94));
  border:1px solid var(--line);
  clip-path:polygon(0 0, calc(100% - var(--home-cut)) 0, 100% var(--home-cut), 100% 100%, 0 100%);
  color:var(--ink);
  text-decoration:none;
  transition:transform .32s var(--ease), border-color .32s var(--ease), background .32s var(--ease);
}

.page-home .task-card:hover,
.page-home .task-card:focus-visible{
  transform:translateY(-4px);
  border-color:var(--c-gold-bright);
  background:linear-gradient(158deg, rgba(18,60,105,1), rgba(11,37,69,1));
}

.page-home .task-card__idx{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.16em;
  color:var(--c-gold);
}

.page-home .task-card__title{
  font-family:var(--font-display);
  font-weight:800;
  font-size:18px;
  color:var(--c-paper);
}

.page-home .task-card__desc{
  font-family:var(--font-ui);
  font-size:13px;
  line-height:1.65;
  color:var(--ink-dim);
}

.page-home .home-hero__visual{
  position:relative;
}

.page-home .home-hero__visual .media-frame{
  clip-path:polygon(0 0, 100% 0, 100% 86%, 0 100%);
}

.page-home .home-hero__stamp{
  position:absolute;
  left:0;
  bottom:-14px;
  display:grid;
  gap:2px;
  padding:10px 18px 12px;
  background:linear-gradient(135deg, var(--c-gold-bright), var(--c-gold));
  color:#20180a;
  clip-path:polygon(0 0, 100% 0, 100% 100%, 14px 100%, 0 calc(100% - 14px));
  box-shadow:0 14px 30px rgba(7,26,51,.5);
}

.page-home .home-hero__stamp-k{
  font-family:var(--font-ui);
  font-size:11px;
  letter-spacing:.08em;
}

.page-home .home-hero__stamp-v{
  font-family:var(--font-mono);
  font-size:16px;
  font-weight:700;
}

/* ---------- 开奖速查 ---------- */
.page-home .home-speed__grid{
  display:grid;
  gap:var(--home-gap);
}

.page-home .period-list{
  list-style:none;
  margin:0;
  padding:0;
}

.page-home .period-list__row{
  display:flex;
  flex-wrap:wrap;
  gap:6px 12px;
  align-items:center;
  justify-content:space-between;
  padding:12px 0;
  border-bottom:1px dashed var(--line-soft);
}

.page-home .period-list__row:last-child{
  border-bottom:0;
}

.page-home .period-list__main{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:10px;
  font-family:var(--font-ui);
  font-size:14px;
  color:var(--c-paper);
}

.page-home .period-list__main b{
  font-weight:700;
}

.page-home .period-list__no{
  font-family:var(--font-mono);
  font-size:13px;
  letter-spacing:.04em;
  color:var(--c-gold-bright);
}

.page-home .period-list__meta{
  display:flex;
  align-items:center;
  gap:10px;
}

.page-home .period-list__time{
  font-family:var(--font-mono);
  font-size:12px;
  color:var(--ink-dim);
}

.page-home .home-speed__more{
  margin-top:16px;
}

.page-home .rhythm{
  list-style:none;
  margin:0;
  padding:0 0 0 24px;
  position:relative;
  display:grid;
  gap:16px;
}

.page-home .rhythm::before{
  content:"";
  position:absolute;
  left:5px;
  top:8px;
  bottom:8px;
  width:1px;
  background:linear-gradient(180deg, var(--c-teal), rgba(40,224,200,.2));
}

.page-home .rhythm li{
  position:relative;
  display:grid;
  gap:4px;
}

.page-home .rhythm li::before{
  content:"";
  position:absolute;
  left:-24px;
  top:7px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--c-teal);
  box-shadow:0 0 0 3px rgba(47,175,143,.18);
}

.page-home .rhythm li:last-child::before{
  background:var(--c-cyan);
  box-shadow:0 0 0 3px rgba(40,224,200,.22);
}

.page-home .rhythm__t{
  font-family:var(--font-mono);
  font-size:13px;
  letter-spacing:.08em;
  color:var(--c-cyan);
}

.page-home .rhythm__d{
  font-family:var(--font-ui);
  font-size:13px;
  line-height:1.7;
  color:var(--ink-2);
}

.page-home .home-speed__figure{
  margin-top:var(--home-gap);
}

/* ---------- 大屏入口 ---------- */
.page-home .home-tv{
  isolation:isolate;
}

.page-home .home-tv::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(102deg, rgba(18,60,105,.5), rgba(7,26,51,0) 62%);
  clip-path:polygon(0 10%, 100% 0, 100% 92%, 0 100%);
}

.page-home .home-tv__inner{
  display:grid;
  gap:clamp(24px,4vw,44px);
  align-items:center;
}

.page-home .home-tv__copy h2{
  margin:12px 0 14px;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(24px,4.4vw,40px);
  line-height:1.16;
  color:var(--c-paper);
}

.page-home .home-tv__copy > p{
  margin:0;
  max-width:52ch;
  font-family:var(--font-body);
  font-size:clamp(15px,1.7vw,17px);
  line-height:1.85;
  color:var(--ink-2);
}

.page-home .step-list{
  list-style:none;
  margin:22px 0 24px;
  padding:0;
  counter-reset:step;
  display:grid;
  gap:14px;
}

.page-home .step-list li{
  position:relative;
  padding-left:46px;
  display:grid;
  gap:4px;
}

.page-home .step-list li::before{
  counter-increment:step;
  content:"0" counter(step);
  position:absolute;
  left:0;
  top:0;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  font-family:var(--font-mono);
  font-size:12px;
  color:#20180a;
  background:linear-gradient(135deg, var(--c-gold-bright), var(--c-gold));
  clip-path:polygon(0 0, 100% 0, 100% 76%, 76% 100%, 0 100%);
}

.page-home .step-list__t{
  font-family:var(--font-display);
  font-weight:700;
  font-size:15px;
  color:var(--c-paper);
}

.page-home .step-list__d{
  font-family:var(--font-ui);
  font-size:13px;
  line-height:1.7;
  color:var(--ink-dim);
}

.page-home .home-tv__figure{
  clip-path:polygon(0 0, 100% 0, 100% 100%, 0 88%);
}

/* ---------- 走势与收藏 ---------- */
.page-home .home-trend__grid{
  display:grid;
  gap:var(--home-gap);
}

.page-home .chart-card__head{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}

.page-home .chart-card__head .panel-title{
  margin:0;
}

.page-home .chart-card__svg{
  display:block;
  width:100%;
  height:auto;
  margin-top:8px;
  overflow:visible;
}

.page-home .chart-card__grid line{
  stroke:rgba(143,166,191,.16);
  stroke-width:1;
  stroke-dasharray:4 6;
}

.page-home .chart-card__line{
  fill:none;
  stroke:var(--c-cyan);
  stroke-width:2.4;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.page-home .chart-card__dot{
  fill:var(--c-gold-bright);
  stroke:rgba(242,201,107,.35);
  stroke-width:6;
}

.page-home .chip-row{
  list-style:none;
  margin:16px 0 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.page-home .chip-row li{
  padding:5px 10px;
  font-family:var(--font-mono);
  font-size:12px;
  color:var(--ink-2);
  background:rgba(7,26,51,.6);
  border:1px solid var(--line-soft);
}

.page-home .collect-list{
  list-style:none;
  margin:0;
  padding:0;
}

.page-home .collect-list li{
  border-bottom:1px dashed var(--line-soft);
}

.page-home .collect-list li:last-child{
  border-bottom:0;
}

.page-home .collect-list a{
  display:grid;
  gap:3px;
  padding:11px 0;
  text-decoration:none;
  color:inherit;
  transition:padding-left .25s var(--ease), color .25s var(--ease);
}

.page-home .collect-list a:hover,
.page-home .collect-list a:focus-visible{
  padding-left:8px;
  color:var(--c-gold-bright);
}

.page-home .collect-list__k{
  font-family:var(--font-display);
  font-weight:700;
  font-size:14px;
  color:var(--c-paper);
}

.page-home .collect-list a:hover .collect-list__k,
.page-home .collect-list a:focus-visible .collect-list__k{
  color:var(--c-gold-bright);
}

.page-home .collect-list__v{
  font-family:var(--font-ui);
  font-size:12px;
  color:var(--ink-dim);
}

.page-home .collect-card .btn{
  margin-top:16px;
}

.page-home .home-trend__figure{
  margin-top:var(--home-gap);
}

/* ---------- 往期翻查 ---------- */
.page-home .home-history{
  background:linear-gradient(180deg, rgba(11,37,69,.55), rgba(7,26,51,0));
}

.page-home .locate-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:var(--home-gap);
}

.page-home .locate__k{
  display:inline-block;
  margin-bottom:10px;
  font-family:var(--font-mono);
  font-size:13px;
  letter-spacing:.16em;
  color:var(--c-vermilion);
}

.page-home .locate-grid .cut-panel p{
  margin:0;
  font-family:var(--font-ui);
  font-size:13px;
  line-height:1.8;
  color:var(--ink-2);
}

/* ---------- 数据与信任 ---------- */
.page-home .home-trust{
  isolation:isolate;
}

.page-home .home-trust::before{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:70%;
  z-index:-1;
  background:radial-gradient(80% 100% at 20% 100%, rgba(18,60,105,.55), transparent 70%);
}

.page-home .stat-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:14px;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
}

.page-home .stat{
  padding:18px 16px 20px;
  background:linear-gradient(160deg, rgba(18,60,105,.55), rgba(7,26,51,.8));
  border-top:2px solid var(--c-gold);
  border-left:1px solid var(--line-soft);
  border-right:1px solid var(--line-soft);
  border-bottom:1px solid var(--line-soft);
}

.page-home .stat__num{
  display:block;
  font-family:var(--font-mono);
  font-size:clamp(26px,4vw,36px);
  font-weight:700;
  line-height:1.1;
  letter-spacing:-.02em;
  color:var(--c-gold-bright);
}

.page-home .stat__unit{
  margin-left:2px;
  font-size:.5em;
  color:var(--c-gold);
}

.page-home .stat__label{
  display:block;
  margin-top:8px;
  font-family:var(--font-ui);
  font-size:12.5px;
  line-height:1.65;
  color:var(--ink-2);
}

.page-home .cred-list{
  margin-top:clamp(20px,3vw,30px);
  padding-top:20px;
  border-top:1px solid var(--line);
  display:grid;
  gap:12px;
}

.page-home .cred-list p{
  margin:0;
  font-family:var(--font-body);
  font-size:14.5px;
  line-height:1.85;
  color:var(--ink-2);
}

.page-home .cred-list__k{
  display:inline-block;
  margin-right:10px;
  padding:2px 8px;
  font-family:var(--font-ui);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--c-gold);
  border:1px solid var(--line);
}

/* ---------- 下一步 ---------- */
.page-home .next-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:var(--home-gap);
}

.page-home .next-card{
  display:grid;
  gap:10px;
  height:100%;
  padding:clamp(18px,2.6vw,26px);
  text-decoration:none;
  color:inherit;
  background:linear-gradient(158deg, rgba(18,60,105,.75), rgba(7,26,51,.92));
  border:1px solid var(--line);
  clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--home-cut)), calc(100% - var(--home-cut)) 100%, 0 100%);
  transition:transform .3s var(--ease), border-color .3s var(--ease);
}

.page-home .next-card:hover,
.page-home .next-card:focus-visible{
  transform:translateY(-4px);
  border-color:var(--c-gold-bright);
}

.page-home .next-card__k{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.18em;
  color:var(--c-vermilion);
}

.page-home .next-card h3{
  margin:0;
  font-family:var(--font-display);
  font-weight:800;
  font-size:19px;
  color:var(--c-paper);
}

.page-home .next-card p{
  margin:0;
  font-family:var(--font-ui);
  font-size:13.5px;
  line-height:1.8;
  color:var(--ink-2);
}

.page-home .next-card__go{
  margin-top:auto;
  font-family:var(--font-ui);
  font-size:13px;
  color:var(--c-gold-bright);
}

.page-home .next-card__go::after{
  content:" →";
}

.page-home .home-next__links{
  margin:clamp(20px,3vw,28px) 0 0;
  font-family:var(--font-ui);
  font-size:13.5px;
  color:var(--ink-dim);
}

.page-home .home-next__links span{
  margin:0 8px;
  color:var(--c-ash);
}

.page-home .home-next__links a{
  color:var(--c-gold);
  text-decoration:none;
  border-bottom:1px solid rgba(214,165,74,.4);
}

.page-home .home-next__links a:hover,
.page-home .home-next__links a:focus-visible{
  color:var(--c-gold-bright);
  border-bottom-color:var(--c-gold-bright);
}

/* ---------- 响应式 ---------- */
@media (min-width:640px){
  .page-home .home-hero__tasks{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
  .page-home .locate-grid{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
  .page-home .next-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}

@media (min-width:900px){
  .page-home .home-hero__inner{
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  }
  .page-home .home-hero__tasks{
    grid-template-columns:repeat(3, minmax(0,1fr));
    align-items:start;
  }
  .page-home .home-hero__tasks li:nth-child(2){
    transform:translateY(16px);
  }
  .page-home .home-hero__tasks li:nth-child(3){
    transform:translateY(32px);
  }
  .page-home .home-hero__visual{
    margin-top:8px;
  }
  .page-home .home-speed__grid{
    grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);
    align-items:start;
  }
  .page-home .home-tv__inner{
    grid-template-columns:minmax(0,1fr) minmax(0,.92fr);
  }
  .page-home .home-tv__figure{
    clip-path:polygon(0 0, 100% 0, 100% 100%, 6% 92%);
  }
  .page-home .home-trend__grid{
    grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);
    align-items:start;
  }
  .page-home .next-grid{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
  .page-home .next-grid li:nth-child(2){
    transform:translateY(16px);
  }
  .page-home .next-grid li:nth-child(3){
    transform:translateY(32px);
  }
}

@media (min-width:1200px){
  .page-home .home-hero{
    padding-block:72px 96px;
  }
  .page-home .stat-grid{
    grid-template-columns:repeat(6, minmax(0,1fr));
  }
}

@media (prefers-reduced-motion:reduce){
  .page-home *{
    transition:none !important;
  }
  .page-home .home-hero__tasks li,
  .page-home .next-grid li{
    transform:none !important;
  }
}
