.page-home{
  --home-gap:18px;
  --home-cut:20px;
  --home-grid:minmax(0,1fr);
}

.page-home .home-wrap{
  padding-block:22px 72px;
}

/* ---------- 上下文提示 ---------- */
.page-home .home-context{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border:1px solid var(--lh-line-soft);
  border-left:3px solid var(--lh-amber);
  background:var(--lh-glass);
  margin-bottom:20px;
}
.page-home .home-context__dot{
  width:8px;
  height:8px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--lh-pulse);
  box-shadow:0 0 0 4px rgba(255,46,136,.16);
}
.page-home .home-context__text{
  margin:0;
  font-size:13px;
  color:var(--lh-muted);
  letter-spacing:.01em;
}
.page-home .home-context__text strong{
  color:var(--lh-paper);
  font-family:var(--lh-font-mono);
  letter-spacing:.04em;
}

/* ---------- 首屏拼贴 ---------- */
.page-home .home-hero{
  display:grid;
  gap:var(--home-gap);
  grid-template-columns:var(--home-grid);
  align-items:start;
}

.page-home .home-hero__index{
  border:1px solid var(--lh-line);
  border-radius:var(--lh-radius);
  padding:16px 14px;
  min-width:0;
}
.page-home .home-index__label{
  margin:0 0 10px;
  font-size:12px;
  letter-spacing:.16em;
  color:var(--lh-dim);
  text-transform:uppercase;
}
.page-home .home-rail{
  list-style:none;
  margin:0 0 12px;
  padding:0 0 8px;
  display:flex;
  gap:8px;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
}
.page-home .home-rail > li{
  flex:0 0 auto;
  scroll-snap-align:start;
}
.page-home .lh-season-chip.home-rail__now{
  background:var(--lh-amber);
  border-color:var(--lh-amber);
  color:var(--lh-ink);
  font-weight:800;
}
.page-home .home-index__note{
  margin:0;
  font-size:13px;
  line-height:1.7;
  color:var(--lh-muted);
}

.page-home .home-hero__focus{
  position:relative;
  aspect-ratio:2 / 1;
  min-height:290px;
  border:1px solid var(--lh-line-strong);
  border-radius:var(--lh-radius);
  overflow:hidden;
  background:var(--lh-rock-deep);
  clip-path:polygon(0 0,100% 0,100% calc(100% - var(--home-cut)),calc(100% - var(--home-cut)) 100%,0 100%);
}
.page-home .home-hero__focus img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.6;
}
.page-home .home-focus__body{
  position:relative;
  z-index:1;
  height:100%;
  min-height:290px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:12px;
  padding:24px 18px 22px;
  background:linear-gradient(180deg,rgba(14,13,18,.2) 0%,rgba(14,13,18,.7) 52%,rgba(14,13,18,.95) 100%);
}
.page-home .home-focus__eyebrow{
  margin:0;
  font-family:var(--lh-font-mono);
  font-size:12px;
  letter-spacing:.18em;
  color:var(--lh-gold);
}
.page-home .home-hero__title{
  margin:0;
  font-family:var(--lh-font-head);
  font-weight:900;
  font-size:clamp(25px,5.4vw,42px);
  line-height:1.1;
  letter-spacing:-.01em;
  color:var(--lh-paper);
}
.page-home .home-hero__lede{
  margin:0;
  max-width:46ch;
  font-size:15px;
  line-height:1.75;
  color:var(--lh-muted);
}
.page-home .home-hero__cta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:4px;
}

.page-home .home-pulse{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.page-home .home-pulse__cell{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:14px 14px 16px;
  border:1px solid var(--lh-line);
  background:var(--lh-rock);
  min-height:120px;
}
.page-home .home-pulse__cell::before{
  content:"";
  display:block;
  width:46%;
  height:3px;
  background:var(--cell-accent,var(--lh-amber));
  transform:skewX(-12deg);
}
.page-home .home-pulse__cell--amber{ --cell-accent:var(--lh-amber); }
.page-home .home-pulse__cell--paper{ --cell-accent:var(--lh-paper); }
.page-home .home-pulse__cell--pulse{ --cell-accent:var(--lh-pulse); }
.page-home .home-pulse__cell--neon{ --cell-accent:var(--lh-neon); }

.page-home .home-pulse__label{
  margin:2px 0 0;
  font-size:12px;
  letter-spacing:.12em;
  color:var(--lh-dim);
}
.page-home .home-pulse__value{
  margin:0;
  display:flex;
  align-items:baseline;
  gap:4px;
  flex-wrap:wrap;
  line-height:1.05;
  color:var(--lh-paper);
}
.page-home .home-pulse__value--sm{
  font-family:var(--lh-font-head);
  font-weight:800;
  font-size:19px;
  letter-spacing:-.01em;
}
.page-home .home-pulse__value .lh-num{
  font-family:var(--lh-font-mono);
  font-weight:800;
  font-size:clamp(27px,6vw,36px);
  line-height:1;
}
.page-home .home-pulse__cell--amber .lh-num{ color:var(--lh-amber); }
.page-home .home-pulse__cell--pulse .lh-num{ color:var(--lh-pulse); }
.page-home .home-pulse__cell--neon .lh-num{ color:var(--lh-neon); }
.page-home .home-pulse__unit{
  font-size:13px;
  color:var(--lh-muted);
}
.page-home .home-pulse__note{
  margin:auto 0 0;
  font-size:12.5px;
  line-height:1.6;
  color:var(--lh-dim);
}
.page-home .home-pulse__cell--pulse .home-pulse__value{
  animation:home-pulse-breathe 1.2s ease-in-out infinite;
}
@keyframes home-pulse-breathe{
  0%,100%{ opacity:1; }
  50%{ opacity:.52; }
}

/* ---------- 章节节奏 ---------- */
.page-home .home-section{
  margin-top:64px;
  scroll-margin-top:88px;
}

/* ---------- 筛选台 ---------- */
.page-home .home-filterbar{
  margin-top:22px;
  display:grid;
  gap:16px;
  padding:18px 16px;
  border:1px solid var(--lh-line);
  border-top:3px solid var(--lh-amber);
  background:var(--lh-glass);
}
.page-home .home-filter-group__label{
  margin:0 0 9px;
  font-size:12px;
  letter-spacing:.14em;
  color:var(--lh-dim);
}
.page-home .home-filter-group__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.page-home .home-chip{
  position:relative;
  display:inline-flex;
  align-items:center;
  padding:7px 13px;
  border:1px solid var(--lh-line);
  border-radius:999px;
  font-size:13px;
  color:var(--lh-muted);
  cursor:pointer;
  white-space:nowrap;
  transition:border-color .18s ease,color .18s ease,background-color .18s ease;
}
.page-home .home-chip input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  pointer-events:none;
}
.page-home .home-chip:has(input:checked){
  border-color:var(--lh-amber);
  background:rgba(232,113,28,.16);
  color:var(--lh-paper);
}
.page-home .home-chip:has(input:focus-visible){
  outline:2px solid var(--lh-gold);
  outline-offset:2px;
}

/* 交叉筛选：门槛 / 包体 同时生效 */
.page-home:has(#home-gate-low:checked) .home-item:not(.g-low){ display:none; }
.page-home:has(#home-gate-mid:checked) .home-item:not(.g-mid){ display:none; }
.page-home:has(#home-gate-high:checked) .home-item:not(.g-high){ display:none; }
.page-home:has(#home-band-a:checked) .home-item:not(.b-a){ display:none; }
.page-home:has(#home-band-b:checked) .home-item:not(.b-b){ display:none; }
.page-home:has(#home-band-c:checked) .home-item:not(.b-c){ display:none; }
.page-home:has(#home-band-d:checked) .home-item:not(.b-d){ display:none; }

/* 排序：按包体从大到小 */
.page-home:has(#home-sort-size:checked) .home-item.b-d{ order:1; }
.page-home:has(#home-sort-size:checked) .home-item.b-c{ order:2; }
.page-home:has(#home-sort-size:checked) .home-item.b-b{ order:3; }
.page-home:has(#home-sort-size:checked) .home-item.b-a{ order:4; }

/* ---------- 条目流 ---------- */
.page-home .home-list__figure{
  margin:22px 0 0;
  border:1px solid var(--lh-line);
  background:var(--lh-rock-deep);
  overflow:hidden;
}
.page-home .home-list__figure img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  opacity:.85;
}
.page-home .home-list__cap{
  padding:10px 14px;
  font-size:12.5px;
  line-height:1.65;
  color:var(--lh-dim);
  border-top:1px solid var(--lh-line-soft);
}
.page-home .home-list__bar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:18px;
}
.page-home .home-list__count{
  margin:0;
  font-size:13.5px;
  color:var(--lh-muted);
}
.page-home .home-list__count .lh-num{
  font-family:var(--lh-font-mono);
  font-weight:800;
  font-size:17px;
  color:var(--lh-amber);
}

.page-home .home-list{
  list-style:none;
  margin:14px 0 0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.page-home .home-item{
  position:relative;
  padding:14px 16px 12px;
  border:1px solid var(--lh-line);
  border-left-width:3px;
  background:var(--lh-rock);
  transition:border-color .2s ease;
}
.page-home .home-item.g-low{ border-left-color:var(--lh-neon); }
.page-home .home-item.g-mid{ border-left-color:var(--lh-gold); }
.page-home .home-item.g-high{ border-left-color:var(--lh-amber); }
.page-home .home-item:has(input:checked){ border-color:var(--lh-gold); }

.page-home .home-item__head{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px 12px;
}
.page-home .home-item__title{
  margin:0;
  font-family:var(--lh-font-head);
  font-weight:800;
  font-size:18px;
  letter-spacing:-.01em;
  color:var(--lh-paper);
}
.page-home .home-item__tags{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.page-home .home-item__fav{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:12px;
  color:var(--lh-dim);
  cursor:pointer;
}
.page-home .home-item__fav input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  pointer-events:none;
}
.page-home .home-item__fav-mark{
  font-size:14px;
  line-height:1;
  color:rgba(244,239,228,.28);
  transition:color .18s ease;
}
.page-home .home-item__fav input:checked ~ .home-item__fav-mark{ color:var(--lh-gold); }
.page-home .home-item__fav input:focus-visible ~ .home-item__fav-mark{
  outline:2px solid var(--lh-gold);
  outline-offset:2px;
}

.page-home .home-item__facts{
  display:grid;
  gap:4px 16px;
  grid-template-columns:minmax(0,1fr);
  margin:10px 0 0;
}
.page-home .home-item__facts--panel{
  margin-top:0;
}
.page-home .home-kv{
  display:flex;
  align-items:baseline;
  gap:8px;
  min-width:0;
}
.page-home .home-kv dt{
  flex:0 0 auto;
  font-size:12px;
  letter-spacing:.04em;
  color:var(--lh-dim);
}
.page-home .home-kv dd{
  margin:0;
  min-width:0;
  font-family:var(--lh-font-mono);
  font-weight:600;
  font-size:13px;
  color:var(--lh-paper);
  overflow-wrap:anywhere;
}

/* 展开组件微调 */
.page-home .lh-expand{ margin-top:10px; }
.page-home .lh-expand__trigger{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:5px 0;
  border:0;
  background:none;
  color:var(--lh-gold);
  font-family:var(--lh-font-body);
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}
.page-home .lh-expand__trigger:hover{ color:var(--lh-amber); }
.page-home .lh-expand__trigger:focus-visible{
  outline:2px solid var(--lh-gold);
  outline-offset:3px;
}
.page-home .lh-expand__icon{
  width:8px;
  height:8px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .2s ease;
}
.page-home [data-expand][data-state="open"] .lh-expand__icon{
  transform:rotate(-135deg);
}
.page-home .lh-panel{
  margin-top:8px;
  padding-top:12px;
  border-top:1px solid var(--lh-line-soft);
}

/* ---------- 可玩区间尺 ---------- */
.page-home .home-gate{
  margin-top:22px;
  display:grid;
  gap:18px;
  grid-template-columns:minmax(0,1fr);
}
.page-home .home-gate__figure{
  margin:0;
  border:1px solid var(--lh-line);
  background:var(--lh-rock-deep);
  overflow:hidden;
}
.page-home .home-gate__figure img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.page-home .home-gate__scale{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.page-home .home-gate__seg{
  padding:15px 20px 16px;
  border:1px solid var(--lh-line);
  background-color:var(--lh-rock);
}
.page-home .home-gate__seg--low{
  background-image:linear-gradient(90deg,rgba(53,224,161,.22),rgba(53,224,161,0) 74%);
  clip-path:polygon(0 0,100% 0,calc(100% - 18px) 100%,0 100%);
}
.page-home .home-gate__seg--mid{
  background-image:linear-gradient(90deg,rgba(242,163,60,.2),rgba(242,163,60,0) 74%);
  clip-path:polygon(18px 0,100% 0,100% 100%,0 100%);
}
.page-home .home-gate__seg--high{
  background-image:linear-gradient(90deg,rgba(232,113,28,.24),rgba(232,113,28,0) 74%);
  clip-path:polygon(0 0,100% 0,calc(100% - 18px) 100%,0 100%);
}
.page-home .home-gate__seg-name{
  margin:0;
  font-family:var(--lh-font-head);
  font-weight:800;
  font-size:16px;
  color:var(--lh-paper);
}
.page-home .home-gate__seg-spec{
  margin:5px 0 0;
  font-family:var(--lh-font-mono);
  font-size:13px;
  color:var(--lh-gold);
  overflow-wrap:anywhere;
}
.page-home .home-gate__seg-note{
  margin:6px 0 0;
  font-size:13px;
  line-height:1.7;
  color:var(--lh-muted);
}
.page-home .home-gate__foot{
  margin:6px 0 0;
  font-size:12.5px;
  line-height:1.7;
  color:var(--lh-dim);
}

/* ---------- 包体档位 ---------- */
.page-home .home-band__visual{
  margin:22px 0 0;
  border:1px solid var(--lh-line);
  background:var(--lh-rock-deep);
  overflow:hidden;
}
.page-home .home-band__visual img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  opacity:.9;
}
.page-home .home-band{
  list-style:none;
  margin:16px 0 0;
  padding:0;
  display:grid;
  gap:10px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.page-home .home-band__item{
  padding:14px 14px 16px;
  border:1px solid var(--lh-line);
  background:var(--lh-rock);
  display:flex;
  flex-direction:column;
  gap:6px;
}
.page-home .home-band__item:nth-child(odd){
  clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%);
}
.page-home .home-band__item:nth-child(even){
  clip-path:polygon(14px 0,100% 0,100% 100%,0 100%);
}
.page-home .home-band__no{
  margin:0;
  font-family:var(--lh-font-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--lh-clay);
}
.page-home .home-band__range{
  margin:0;
  font-family:var(--lh-font-mono);
  font-weight:800;
  font-size:15px;
  color:var(--lh-paper);
}
.page-home .home-band__range .lh-num{
  font-family:var(--lh-font-mono);
  font-weight:800;
  font-size:22px;
}
.page-home .home-band__note{
  margin:auto 0 0;
  font-size:12.5px;
  line-height:1.65;
  color:var(--lh-dim);
}

/* ---------- 档案入口 ---------- */
.page-home .home-archive{
  margin-top:22px;
  display:grid;
  gap:16px;
  grid-template-columns:minmax(0,1fr);
}
.page-home .home-archive__stats{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.page-home .home-archive__stat{
  padding:16px 14px;
  border:1px solid var(--lh-line);
  border-top:3px solid var(--lh-moss);
  background:var(--lh-glass);
}
.page-home .home-archive__stat-num{
  margin:0;
  line-height:1;
}
.page-home .home-archive__stat-num .lh-num{
  font-family:var(--lh-font-mono);
  font-weight:800;
  font-size:clamp(26px,5.6vw,34px);
}
.page-home .home-archive__stat-label{
  margin:8px 0 0;
  font-size:12.5px;
  line-height:1.6;
  color:var(--lh-dim);
}
.page-home .home-archive__links{
  display:grid;
  gap:10px;
}
.page-home .home-archive__link{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:16px;
  border:1px solid var(--lh-line);
  border-left:3px solid var(--lh-amber);
  background:var(--lh-rock);
  text-decoration:none;
  transition:border-color .18s ease,background-color .18s ease;
}
.page-home .home-archive__link:hover{
  border-color:var(--lh-amber);
  background:var(--lh-rock-deep);
}
.page-home .home-archive__link-k{
  font-family:var(--lh-font-head);
  font-weight:800;
  font-size:15.5px;
  color:var(--lh-paper);
}
.page-home .home-archive__link-v{
  font-size:13px;
  line-height:1.7;
  color:var(--lh-muted);
}

/* ---------- 帮助入口 ---------- */
.page-home .home-help{
  margin-top:22px;
  display:grid;
  gap:12px;
  grid-template-columns:minmax(0,1fr);
}
.page-home .home-help__card{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:18px 16px;
  border:1px solid var(--lh-line);
  background:var(--lh-rock);
}
.page-home .home-help__k{
  margin:0;
  font-family:var(--lh-font-head);
  font-weight:800;
  font-size:15.5px;
  color:var(--lh-paper);
}
.page-home .home-help__v{
  margin:0;
  font-size:13px;
  line-height:1.7;
  color:var(--lh-muted);
}
.page-home .home-help__card .lh-btn{
  align-self:flex-start;
  margin-top:2px;
}
.page-home .home-help__contact{
  margin-top:16px;
  padding:18px 16px;
  border:1px solid var(--lh-line);
  border-left:3px solid var(--lh-clay);
  background:var(--lh-glass);
  display:grid;
  gap:6px;
}
.page-home .home-help__contact p{
  margin:0;
  font-size:13.5px;
  line-height:1.7;
  color:var(--lh-muted);
}
.page-home .home-help__contact a{
  color:var(--lh-gold);
}
.page-home .home-help__contact-note{
  font-size:12.5px;
  color:var(--lh-dim);
}

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

@media (min-width:760px){
  .page-home .home-pulse{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .page-home .home-band{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .page-home .home-archive__stats{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .page-home .home-filterbar{
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:20px 20px;
  }
  .page-home .home-filter-group--sort{
    grid-column:1 / -1;
  }
}

@media (min-width:980px){
  .page-home .home-hero{
    grid-template-columns:288px minmax(0,1fr);
    grid-template-areas:
      "index focus"
      "index pulse";
    gap:20px;
  }
  .page-home .home-hero__index{ grid-area:index; }
  .page-home .home-hero__focus{ grid-area:focus; }
  .page-home .home-pulse{ grid-area:pulse; }

  .page-home .home-gate{
    grid-template-columns:minmax(0,360px) minmax(0,1fr);
    gap:24px;
    align-items:start;
  }
  .page-home .home-gate__scale{ gap:10px; }
  .page-home .home-gate__seg{ padding:18px 26px 18px; }
  .page-home .home-gate__seg-note{ max-width:60ch; }

  .page-home .home-archive{
    grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
    gap:20px;
  }
  .page-home .home-archive__stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .page-home .home-filterbar{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .page-home .home-filter-group--sort{
    grid-column:auto;
  }
}

@media (min-width:1120px){
  .page-home .home-band{
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
  .page-home .home-band__item:nth-child(3n+2){
    padding-bottom:26px;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-home .home-pulse__cell--pulse .home-pulse__value{ animation:none; }
  .page-home .home-item__fav-mark,
  .page-home .lh-expand__icon,
  .page-home .lh-expand__trigger,
  .page-home .home-archive__link,
  .page-home .home-chip{ transition:none; }
}
