.page-home{
  --home-shadow:8px 8px 0 var(--hard-shadow);
  --home-shadow-sm:4px 4px 0 var(--hard-shadow);
  --home-edge:2px solid var(--line);
  background:var(--sea-0);
  color:var(--ice);
  overflow-x:clip;
}

/* ---------- 首屏 ---------- */
.page-home .home-hero{
  position:relative;
  overflow:hidden;
  padding-top:calc(var(--header-h) + clamp(24px,5vw,56px));
  padding-bottom:clamp(36px,6vw,72px);
  background:
    radial-gradient(120% 90% at 86% -8%, rgba(255,90,31,.30), rgba(255,90,31,0) 58%),
    radial-gradient(90% 80% at 2% 44%, rgba(40,240,194,.10), rgba(40,240,194,0) 62%),
    var(--sea-0);
}
.page-home .hero-trails{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  opacity:.55;
}
.page-home .home-hero > .container{
  position:relative;
  z-index:1;
}
.page-home .hero-head{
  max-width:860px;
  margin-bottom:clamp(24px,3.5vw,40px);
}
.page-home .hero-head .eyebrow{
  color:var(--cyan);
  letter-spacing:.16em;
  margin:0;
}
.page-home .hero-head h1{
  font-size:clamp(2.05rem,6vw,4.2rem);
  font-weight:900;
  line-height:1.04;
  letter-spacing:-.04em;
  margin:.28em 0 .38em;
}
.page-home .hero-lede{
  max-width:62ch;
  margin:0;
  color:var(--mist);
  font-size:clamp(1rem,1.6vw,1.1rem);
  line-height:1.75;
}

/* ---------- 首屏栅格 ---------- */
.page-home .hero-grid{
  display:grid;
  gap:clamp(20px,2.4vw,32px);
  grid-template-columns:minmax(0,1fr);
}
@media (min-width:940px){
  .page-home .hero-grid{
    grid-template-columns:minmax(0,8fr) minmax(0,4fr);
    align-items:start;
  }
}

/* ---------- 筛选面板 ---------- */
.page-home .filter-panel{
  min-width:0;
  padding:clamp(18px,2.6vw,30px);
  border:var(--home-edge);
  background:linear-gradient(168deg,var(--sea-1) 0%,#07182A 60%,var(--sea-0) 100%);
  box-shadow:var(--home-shadow);
}
.page-home .filter-panel__intro h2{
  font-size:clamp(1.3rem,2.6vw,1.75rem);
  letter-spacing:-.03em;
  margin:0 0 6px;
}
.page-home .filter-panel__intro p{
  margin:0 0 clamp(16px,2vw,22px);
  color:var(--mist);
  font-size:.95rem;
  line-height:1.7;
}
.page-home .filter-group + .filter-group{
  margin-top:clamp(14px,2vw,20px);
}
.page-home .filter-group__title{
  margin:0 0 10px;
  font-family:var(--font-mono);
  font-size:.75rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--cyan);
}
.page-home .chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.page-home .chip{
  appearance:none;
  font-family:var(--font-mono);
  font-size:.8rem;
  padding:9px 13px;
  border:2px solid var(--line);
  border-radius:var(--radius);
  background:rgba(19,75,115,.35);
  color:var(--mist);
  cursor:pointer;
  transition:color .16s var(--ease),border-color .16s var(--ease),background-color .16s var(--ease),transform .16s var(--ease);
}
.page-home .chip:hover{
  color:var(--ice);
  border-color:var(--ember);
  transform:translateY(-1px);
}
.page-home .chip:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:2px;
}
.page-home .chip[data-active]{
  background:var(--lava);
  border-color:var(--lava);
  color:#180800;
  font-weight:700;
  box-shadow:var(--home-shadow-sm);
}
.page-home .result-head{
  margin:clamp(20px,2.6vw,28px) 0 0;
  padding-top:clamp(14px,2vw,20px);
  border-top:2px solid var(--line);
  font-family:var(--font-mono);
  font-size:.75rem;
  letter-spacing:.14em;
  color:var(--amber);
}
.page-home .result-list{
  list-style:none;
  margin:8px 0 0;
  padding:0;
}
.page-home .result-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:2px 12px;
  padding:11px 0;
  border-bottom:2px solid rgba(43,64,82,.7);
}
.page-home .result-league{
  font-weight:700;
  font-size:1.02rem;
  letter-spacing:-.01em;
}
.page-home .result-time{
  font-family:var(--font-mono);
  font-size:.86rem;
  color:var(--amber);
  white-space:nowrap;
}
.page-home .result-meta{
  grid-column:1 / -1;
  font-family:var(--font-mono);
  font-size:.74rem;
  letter-spacing:.04em;
  color:var(--mist);
}
.page-home .filter-panel__more{
  display:inline-block;
  margin-top:16px;
  padding-bottom:2px;
  font-family:var(--font-mono);
  font-size:.84rem;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:2px solid rgba(40,240,194,.45);
}
.page-home .filter-panel__more:hover{
  border-bottom-color:var(--cyan);
}

/* ---------- 右侧栏 ---------- */
.page-home .hero-side{
  min-width:0;
  display:grid;
  gap:clamp(16px,2vw,24px);
}
.page-home .screen-card{
  border:var(--home-edge);
  background:var(--sea-2);
  box-shadow:var(--home-shadow);
  overflow:hidden;
}
.page-home .screen-card__media{
  position:relative;
  aspect-ratio:16 / 9;
  border-bottom:2px solid var(--line);
}
.page-home .screen-card__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.page-home .screen-card__body{
  padding:clamp(16px,2vw,20px);
  background:linear-gradient(180deg,var(--sea-2),var(--sea-1));
}
.page-home .screen-card__body .eyebrow{
  margin:0;
  color:var(--ember);
  letter-spacing:.14em;
}
.page-home .screen-card__body h2{
  font-size:clamp(1.2rem,2.2vw,1.5rem);
  letter-spacing:-.03em;
  margin:6px 0 8px;
}
.page-home .screen-card__body p{
  margin:0 0 16px;
  color:var(--mist);
  font-size:.94rem;
  line-height:1.7;
}
.page-home .screen-card__body .btn{
  width:100%;
  justify-content:center;
}
.page-home .mini-weekend{
  padding:clamp(14px,2vw,18px);
  border:var(--home-edge);
  background:rgba(10,39,64,.75);
  box-shadow:var(--home-shadow-sm);
}
.page-home .mini-weekend__title{
  margin:0 0 10px;
  font-family:var(--font-mono);
  font-size:.75rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--cyan);
}
.page-home .mini-weekend__list{
  list-style:none;
  margin:0;
  padding:0;
}
.page-home .mini-weekend__list li{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:8px 0;
  border-bottom:2px solid rgba(43,64,82,.7);
  font-size:.9rem;
}
.page-home .mini-weekend__list .mono{
  color:var(--amber);
  font-size:.82rem;
  white-space:nowrap;
}
.page-home .mini-weekend__link{
  display:inline-block;
  margin-top:12px;
  font-family:var(--font-mono);
  font-size:.82rem;
  color:var(--cyan);
  text-decoration:none;
}
.page-home .mini-weekend__link:hover{
  text-decoration:underline;
}

/* ---------- 章节条 ---------- */
.page-home .chapter-bar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 24px;
  margin-top:clamp(28px,4vw,44px);
  padding-top:clamp(16px,2vw,22px);
  border-top:2px solid var(--line);
}
.page-home .chapter-bar__now{
  font-family:var(--font-mono);
  font-size:.78rem;
  letter-spacing:.1em;
  color:var(--mist);
}
.page-home .chapter-bar__now [data-section-readout]{
  color:var(--cyan);
}
.page-home .chapter-bar__list{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0;
  padding:0;
}
.page-home .chapter-bar__list a{
  display:inline-block;
  padding:7px 12px;
  border:2px solid var(--line);
  font-family:var(--font-mono);
  font-size:.78rem;
  color:var(--mist);
  text-decoration:none;
  transition:color .15s var(--ease),border-color .15s var(--ease);
}
.page-home .chapter-bar__list a:hover,
.page-home .chapter-bar__list a[aria-current]{
  color:var(--ice);
  border-color:var(--cyan);
}

/* ---------- 章节通用 ---------- */
.page-home .home-section{
  position:relative;
  padding-block:clamp(44px,7vw,88px);
}
.page-home .section-head{
  max-width:760px;
  margin-bottom:clamp(24px,4vw,40px);
}
.page-home .section-head .eyebrow{
  margin:0;
  color:var(--lava);
  letter-spacing:.14em;
}
.page-home .section-head h2{
  font-size:clamp(1.6rem,4vw,2.6rem);
  font-weight:900;
  line-height:1.14;
  letter-spacing:-.035em;
  margin:.2em 0 .5em;
}
.page-home .section-head p{
  margin:0;
  color:var(--mist);
  line-height:1.75;
}

/* ---------- 周末两场 ---------- */
.page-home .weekend-section{
  background:var(--sea-1);
  clip-path:polygon(0 28px,100% 0,100% 100%,0 100%);
  padding-top:clamp(60px,9vw,110px);
}
.page-home .weekend-grid{
  display:grid;
  gap:clamp(20px,3vw,32px);
  grid-template-columns:minmax(0,1fr);
}
@media (min-width:940px){
  .page-home .weekend-grid{
    grid-template-columns:minmax(0,5fr) minmax(0,7fr);
    align-items:start;
  }
}
.page-home .weekend-figure{
  margin:0;
  border:var(--home-edge);
  background:var(--sea-0);
  box-shadow:var(--home-shadow);
}
.page-home .weekend-figure img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:4 / 3;
  object-fit:cover;
}
.page-home .weekend-figure figcaption{
  padding:12px 14px;
  border-top:2px solid var(--line);
  font-size:.86rem;
  line-height:1.6;
  color:var(--mist);
}
.page-home .combo-stack{
  display:grid;
  gap:clamp(12px,2vw,18px);
  min-width:0;
}
.page-home .combo{
  border:var(--home-edge);
  background:var(--sea-0);
  box-shadow:var(--home-shadow-sm);
}
.page-home .combo__summary{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:6px 14px;
  padding:14px 16px;
  list-style:none;
  cursor:pointer;
  background:linear-gradient(90deg,rgba(19,75,115,.92),rgba(10,39,64,.55));
}
.page-home .combo__summary::-webkit-details-marker{
  display:none;
}
.page-home .combo__summary::after{
  content:"+";
  margin-left:auto;
  font-family:var(--font-mono);
  font-size:1.1rem;
  color:var(--cyan);
}
.page-home .combo[open] .combo__summary::after{
  content:"–";
}
.page-home .combo__summary:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:-2px;
}
.page-home .combo__tag{
  padding:3px 8px;
  background:var(--cyan);
  color:var(--sea-0);
  font-family:var(--font-mono);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.14em;
}
.page-home .combo__name{
  font-weight:700;
  font-size:1.02rem;
  letter-spacing:-.01em;
}
.page-home .combo__span{
  font-family:var(--font-mono);
  font-size:.8rem;
  color:var(--amber);
}
.page-home .combo__body{
  display:grid;
  gap:12px;
  padding:16px;
  border-top:2px solid var(--line);
}
.page-home .match{
  padding-left:14px;
  border-left:4px solid var(--lava);
}
.page-home .match__time{
  margin:0 0 4px;
  font-family:var(--font-mono);
  font-size:.8rem;
  color:var(--amber);
}
.page-home .match h3{
  margin:0 0 4px;
  font-size:1rem;
  letter-spacing:-.01em;
}
.page-home .match p:last-child{
  margin:0;
  font-size:.88rem;
  line-height:1.65;
  color:var(--mist);
}
.page-home .combo__alt{
  margin:0;
  font-family:var(--font-mono);
  font-size:.78rem;
  color:var(--mist);
}
.page-home .combo__cta{
  justify-self:start;
  padding-bottom:2px;
  font-family:var(--font-mono);
  font-size:.83rem;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:2px solid rgba(40,240,194,.4);
}

/* ---------- 赛程与射手榜 ---------- */
.page-home .compare-section{
  background:var(--sea-0);
}
.page-home .compare-grid{
  display:grid;
  gap:clamp(20px,3vw,32px);
  grid-template-columns:minmax(0,1fr);
}
@media (min-width:880px){
  .page-home .compare-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  }
}
.page-home .compare-col{
  min-width:0;
  padding:clamp(16px,2.4vw,24px);
  border:var(--home-edge);
  background:linear-gradient(180deg,rgba(10,39,64,.92),rgba(4,18,31,.92));
}
.page-home .compare-col__title{
  margin:0 0 14px;
  font-family:var(--font-mono);
  font-size:.78rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--cyan);
}
.page-home .compare-figure{
  margin:0 0 16px;
  border:2px solid var(--line);
}
.page-home .compare-figure img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3 / 2;
  object-fit:cover;
}
.page-home .fixture-list{
  list-style:none;
  margin:0;
  padding:0;
}
.page-home .fixture{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:2px 12px;
  padding:11px 0;
  border-bottom:2px solid rgba(43,64,82,.65);
}
.page-home .fixture__time{
  font-family:var(--font-mono);
  font-size:.82rem;
  color:var(--amber);
  white-space:nowrap;
}
.page-home .fixture__league{
  font-weight:600;
  font-size:.95rem;
}
.page-home .fixture__tag{
  grid-column:2;
  font-family:var(--font-mono);
  font-size:.72rem;
  color:var(--mist);
}
.page-home .scorer-list{
  list-style:none;
  margin:0;
  padding:0;
}
.page-home .scorer{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:12px 0;
  border-bottom:2px solid rgba(43,64,82,.65);
}
.page-home .scorer__rank{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:2px solid var(--line);
  font-family:var(--font-mono);
  font-size:.76rem;
  color:var(--mist);
}
.page-home .scorer:first-child .scorer__rank{
  background:var(--lava);
  border-color:var(--lava);
  color:#180800;
  font-weight:700;
}
.page-home .scorer__league{
  font-weight:600;
}
.page-home .scorer__num{
  font-family:var(--font-mono);
  font-size:.9rem;
  color:var(--amber);
}
.page-home .compare-note{
  margin:16px 0 0;
  padding-top:14px;
  border-top:2px solid var(--line);
  font-size:.88rem;
  line-height:1.7;
  color:var(--mist);
}

/* ---------- 覆盖与更新 ---------- */
.page-home .scale-section{
  background:var(--sea-0);
  padding-bottom:clamp(56px,9vw,110px);
}
.page-home .scale-panel{
  position:relative;
  overflow:hidden;
  border:var(--home-edge);
  background:var(--sea-1);
  box-shadow:var(--home-shadow);
}
.page-home .scale-panel__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.34;
}
.page-home .scale-panel::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(4,18,31,.96) 28%,rgba(4,18,31,.52) 100%);
}
.page-home .scale-panel__inner{
  position:relative;
  z-index:1;
  padding:clamp(22px,4vw,52px);
}
.page-home .scale-panel__inner .eyebrow{
  margin:0;
  color:var(--cyan);
  letter-spacing:.14em;
}
.page-home .scale-panel__inner h2{
  max-width:20ch;
  margin:.25em 0 .6em;
  font-size:clamp(1.5rem,3.8vw,2.5rem);
  line-height:1.16;
  letter-spacing:-.035em;
}
.page-home .scale-lede{
  max-width:58ch;
  margin:0 0 clamp(20px,3vw,30px);
  line-height:1.75;
  color:var(--mist);
}
.page-home .scale-stats{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:1px;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border:2px solid var(--line);
  background:var(--line);
}
@media (min-width:760px){
  .page-home .scale-stats{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
.page-home .scale-stats li{
  display:grid;
  gap:4px;
  padding:clamp(12px,2vw,18px);
  background:rgba(4,18,31,.9);
}
.page-home .scale-stats__num{
  font-family:var(--font-mono);
  font-size:clamp(1.5rem,3.4vw,2.1rem);
  font-weight:700;
  line-height:1;
  letter-spacing:-.03em;
  color:var(--amber);
}
.page-home .scale-stats__label{
  font-size:.8rem;
  letter-spacing:.02em;
  color:var(--mist);
}
.page-home .scale-foot{
  margin:clamp(18px,2.6vw,26px) 0 18px;
  font-size:.9rem;
  line-height:1.7;
  color:var(--mist);
}

/* ---------- 三个入口 ---------- */
.page-home .paths-section{
  background:var(--sea-1);
  clip-path:polygon(0 0,100% 28px,100% 100%,0 100%);
  padding-top:clamp(56px,8vw,100px);
}
.page-home .path-grid{
  display:grid;
  gap:clamp(14px,2vw,22px);
  grid-template-columns:minmax(0,1fr);
}
@media (min-width:760px){
  .page-home .path-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
.page-home .path-card{
  display:grid;
  align-content:start;
  gap:10px;
  padding:clamp(18px,2.6vw,26px);
  border:var(--home-edge);
  background:var(--sea-0);
  color:var(--ice);
  text-decoration:none;
  box-shadow:var(--home-shadow-sm);
  transition:transform .18s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease);
}
.page-home .path-card:hover{
  transform:translate(-2px,-2px);
  border-color:var(--lava);
  box-shadow:8px 8px 0 var(--hard-shadow);
}
.page-home .path-card:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:3px;
}
.page-home .path-card__num{
  font-family:var(--font-mono);
  font-size:.78rem;
  letter-spacing:.16em;
  color:var(--cyan);
}
.page-home .path-card h3{
  margin:0;
  font-size:clamp(1.1rem,2vw,1.35rem);
  letter-spacing:-.02em;
}
.page-home .path-card p{
  margin:0;
  font-size:.9rem;
  line-height:1.7;
  color:var(--mist);
}
.page-home .path-card__go{
  margin-top:6px;
  font-family:var(--font-mono);
  font-size:.82rem;
  color:var(--amber);
}
.page-home .path-card--alt{
  background:linear-gradient(160deg,var(--sea-2),var(--sea-1));
  border-color:var(--cyan);
}
.page-home .paths-contact{
  margin:clamp(22px,3vw,32px) 0 0;
  font-size:.92rem;
  color:var(--mist);
}
.page-home .paths-contact a{
  color:var(--cyan);
  text-decoration:none;
  border-bottom:2px solid rgba(40,240,194,.45);
}
.page-home .paths-contact a:hover{
  border-bottom-color:var(--cyan);
}

@media (prefers-reduced-motion:reduce){
  .page-home .chip,
  .page-home .path-card,
  .page-home .chapter-bar__list a{
    transition:none;
  }
  .page-home .chip:hover,
  .page-home .path-card:hover{
    transform:none;
  }
}
