.page-home {
  --ph-cut: 18px;
  --ph-band: linear-gradient(90deg, var(--fb-cyan), var(--fb-orange));
  display: block;
  color: var(--fb-white);
  background: var(--fb-void);
  overflow-x: hidden;
}

/* ============ 首屏：数据脉冲 ============ */
.page-home .ph-pulse {
  position: relative;
  padding: 118px 0 46px;
  background:
    radial-gradient(900px 520px at 88% -10%, rgba(45, 226, 230, .16), transparent 68%),
    radial-gradient(680px 460px at 4% 18%, rgba(255, 122, 26, .12), transparent 70%),
    var(--fb-void);
}

.page-home .ph-pulse::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(138, 155, 176, .07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(138, 155, 176, .07) 1px, transparent 1px);
  background-size: 68px 68px;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, .9), transparent 82%);
  -webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, .9), transparent 82%);
  pointer-events: none;
}

.page-home .ph-pulse__grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  align-items: start;
}

.page-home .ph-pulse__lead {
  order: 1;
}

.page-home .ph-pulse__title {
  margin: 14px 0 18px;
  font-size: clamp(2.1rem, 8.2vw, 4.4rem);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -.03em;
}

.page-home .ph-pulse__title-line {
  display: block;
}

.page-home .ph-pulse__title-line--accent {
  color: transparent;
  background: var(--ph-band);
  -webkit-background-clip: text;
  background-clip: text;
}

.page-home .ph-pulse__text {
  max-width: 40em;
  margin: 0 0 24px;
  color: var(--fb-mist);
  font-size: 1rem;
  line-height: 1.85;
}

.page-home .ph-pulse__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 22px;
}

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

.page-home .ph-pulse__visual {
  order: 2;
  margin: 0;
}

.page-home .ph-pulse__visual .fb-figure__frame {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--ph-cut)), calc(100% - var(--ph-cut)) 100%, 0 100%);
  border: 1px solid rgba(45, 226, 230, .28);
}

/* 数据脉冲条 */
.page-home .ph-ticker {
  position: relative;
  margin-top: 34px;
  padding: 16px 18px 8px;
  border: 1px solid var(--fb-line);
  border-radius: 12px;
  background: rgba(16, 23, 37, .82);
  backdrop-filter: blur(6px);
}

.page-home .ph-ticker__row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px 16px;
  font-family: var(--fb-font-mono);
  font-size: .82rem;
  letter-spacing: .02em;
}

.page-home .ph-ticker__label {
  color: var(--fb-mist);
  text-transform: uppercase;
}

.page-home .ph-ticker__value {
  color: var(--fb-white);
  font-weight: 700;
}

.page-home .ph-ticker__value--cyan { color: var(--fb-cyan); }
.page-home .ph-ticker__value--amber { color: var(--fb-amber); }
.page-home .ph-ticker__value--scarlet { color: var(--fb-scarlet); }

.page-home .ph-ticker__sep {
  width: 1px;
  height: 16px;
  background: var(--fb-line-strong);
}

.page-home .ph-ticker__svg {
  display: block;
  width: 100%;
  height: 34px;
  margin-top: 10px;
}

.page-home .ph-ticker__svg polyline {
  fill: none;
  stroke: var(--fb-cyan);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: .85;
  filter: drop-shadow(0 0 6px rgba(45, 226, 230, .5));
}

/* ============ 通用区块头 ============ */
.page-home .ph-head {
  margin-bottom: 26px;
}

.page-home .fb-section__index {
  font-family: var(--fb-font-mono);
  color: var(--fb-cyan);
}

/* ============ 01 数据总览 ============ */
.page-home .ph-numbers {
  padding: 62px 0 8px;
}

.page-home .ph-numbers__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.page-home .ph-numbers__card {
  padding: 22px 20px 24px;
}

.page-home .ph-numbers__card .fb-stat {
  margin: 6px 0 12px;
}

.page-home .ph-numbers__figure {
  margin: 18px 0 0;
}

.page-home .ph-numbers__card--tall .fb-panel__text {
  margin-bottom: 0;
}

/* ============ 02 订阅 ============ */
.page-home .ph-subscribe {
  padding: 62px 0 8px;
}

.page-home .ph-subscribe__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
}

.page-home .ph-subscribe__list {
  display: grid;
  gap: 14px;
}

.page-home .ph-subscribe__item {
  position: relative;
  padding: 20px 20px 20px 62px;
  border-left: 2px solid var(--fb-cyan);
  background: linear-gradient(90deg, rgba(45, 226, 230, .08), rgba(16, 23, 37, .4) 60%);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%);
}

.page-home .ph-subscribe__no {
  position: absolute;
  left: 20px;
  top: 20px;
  font-family: var(--fb-font-mono);
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--fb-cyan);
}

.page-home .ph-subscribe__name {
  margin: 0 0 8px;
  font-size: 1.06rem;
  font-weight: 700;
  letter-spacing: -.01em;
}

.page-home .ph-subscribe__desc {
  margin: 0;
  color: var(--fb-mist);
  font-size: .94rem;
  line-height: 1.78;
}

.page-home .ph-subscribe__aside {
  padding: 24px 20px;
}

.page-home .ph-subscribe__steps {
  margin: 12px 0 20px;
  padding-left: 1.2em;
  color: var(--fb-mist);
  font-size: .94rem;
  line-height: 1.9;
}

.page-home .ph-subscribe__steps li + li {
  margin-top: 6px;
}

.page-home .ph-subscribe__aside .fb-panel__foot {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

/* ============ 03 红黄牌 ============ */
.page-home .ph-cards {
  padding: 62px 0 8px;
}

.page-home .ph-cards__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.page-home .ph-cards__filter {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-home .ph-cards__tab {
  padding: 8px 16px;
  border: 1px solid var(--fb-line-strong);
  border-radius: 999px;
  background: transparent;
  color: var(--fb-mist);
  font-family: inherit;
  font-size: .84rem;
  letter-spacing: .02em;
  cursor: pointer;
  transition: color .22s var(--fb-ease), border-color .22s var(--fb-ease), background-color .22s var(--fb-ease);
}

.page-home .ph-cards__tab:hover,
.page-home .ph-cards__tab:focus-visible {
  color: var(--fb-white);
  border-color: var(--fb-cyan);
}

.page-home .ph-cards__tab.is-active {
  color: var(--fb-void);
  background: var(--fb-cyan);
  border-color: var(--fb-cyan);
  font-weight: 700;
}

.page-home .ph-cards__tab--amber.is-active {
  background: var(--fb-amber);
  border-color: var(--fb-amber);
}

.page-home .ph-cards__tab--red.is-active {
  background: var(--fb-scarlet);
  border-color: var(--fb-scarlet);
  color: var(--fb-white);
}

.page-home .ph-cards__panel {
  padding: 22px 20px;
}

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

.page-home .ph-cards__figure {
  margin: 0;
}

.page-home .ph-cards__figure .fb-figure__frame {
  border: 1px solid rgba(230, 57, 70, .3);
}

/* ============ 04 射手榜 ============ */
.page-home .ph-scorers {
  padding: 62px 0 8px;
}

.page-home .ph-scorers__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
}

.page-home .ph-scorers__table {
  border: 1px solid var(--fb-line);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(16, 23, 37, .6);
}

.page-home .ph-scorers__row {
  display: grid;
  grid-template-columns: 44px 1.1fr 1fr 58px 52px;
  align-items: center;
  gap: 6px;
  padding: 12px 14px;
  font-size: .84rem;
  border-bottom: 1px solid rgba(138, 155, 176, .16);
}

.page-home .ph-scorers__row:last-child {
  border-bottom: 0;
}

.page-home .ph-scorers__row--head {
  background: rgba(45, 226, 230, .08);
  color: var(--fb-cyan);
  font-family: var(--fb-font-mono);
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.page-home .ph-scorers__row span:nth-child(n+4) {
  font-family: var(--fb-font-mono);
  text-align: right;
}

.page-home .ph-scorers__rank {
  font-family: var(--fb-font-mono);
  color: var(--fb-mist);
}

.page-home .ph-scorers__row:nth-child(2) .ph-scorers__rank {
  color: var(--fb-orange);
  font-weight: 700;
}

.page-home .ph-scorers__goal {
  color: var(--fb-cyan);
  font-weight: 700;
}

.page-home .ph-scorers__figure {
  margin: 0;
}

.page-home .ph-scorers__figure .fb-figure__frame {
  border: 1px solid rgba(45, 226, 230, .24);
}

.page-home .ph-scorers__more {
  margin-top: 20px;
  padding: 22px 20px;
}

.page-home .ph-scorers__more .fb-panel__foot {
  margin-top: 16px;
}

/* ============ 05 战报专栏 ============ */
.page-home .ph-stories {
  padding: 62px 0 8px;
}

.page-home .ph-stories__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.page-home .ph-stories__lead {
  padding: 26px 22px;
}

.page-home .ph-stories__lead .fb-panel__title {
  margin-top: 14px;
}

.page-home .ph-stories__lead .fb-panel__foot {
  margin-top: 18px;
}

.page-home .ph-stories__list {
  display: grid;
  gap: 14px;
}

.page-home .ph-stories__item {
  padding: 18px 18px 20px;
  border-left: 2px solid rgba(138, 155, 176, .34);
  background: linear-gradient(90deg, rgba(16, 23, 37, .9), rgba(16, 23, 37, .35));
  transition: border-color .24s var(--fb-ease), transform .24s var(--fb-ease);
}

.page-home .ph-stories__item:hover {
  border-left-color: var(--fb-cyan);
  transform: translateX(4px);
}

.page-home .ph-stories__title {
  margin: 10px 0 6px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

.page-home .ph-stories__desc {
  margin: 0;
  color: var(--fb-mist);
  font-size: .89rem;
  line-height: 1.75;
}

/* ============ 06 收藏页仪表盘 ============ */
.page-home .ph-dashboard {
  padding: 62px 0 84px;
}

.page-home .ph-dashboard__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.page-home .ph-dashboard__widget {
  padding: 22px 20px;
}

.page-home .ph-dashboard__stars {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

.page-home .ph-star {
  padding: 7px 14px;
  border-radius: 999px;
  border: 1px solid rgba(138, 155, 176, .34);
  color: var(--fb-mist);
  font-size: .82rem;
  transition: color .22s var(--fb-ease), border-color .22s var(--fb-ease), background-color .22s var(--fb-ease);
}

.page-home .ph-star.is-on {
  color: var(--fb-void);
  background: var(--fb-cyan);
  border-color: var(--fb-cyan);
  font-weight: 700;
}

.page-home .ph-dashboard__fixtures {
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

.page-home .ph-dashboard__fixtures li {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 0;
  border-bottom: 1px dashed rgba(138, 155, 176, .22);
  font-size: .88rem;
}

.page-home .ph-dashboard__fixtures li:last-child {
  border-bottom: 0;
}

.page-home .ph-dashboard__day {
  color: var(--fb-mist);
  font-family: var(--fb-font-mono);
  font-size: .78rem;
  letter-spacing: .04em;
}

.page-home .ph-dashboard__match {
  color: var(--fb-white);
}

.page-home .ph-dashboard__bars {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  height: 74px;
  margin: 18px 0 4px;
}

.page-home .ph-dashboard__bar {
  flex: 1;
  border-radius: 3px 3px 0 0;
}

.page-home .ph-dashboard__bar--now {
  background: linear-gradient(180deg, var(--fb-orange), rgba(255, 122, 26, .25));
  height: 82%;
}

.page-home .ph-dashboard__bar--prev {
  background: linear-gradient(180deg, rgba(138, 155, 176, .6), rgba(138, 155, 176, .12));
  height: 48%;
}

.page-home .ph-dashboard__bar--now:nth-child(3) { height: 62%; }
.page-home .ph-dashboard__bar--prev:nth-child(4) { height: 68%; }
.page-home .ph-dashboard__bar--now:nth-child(5) { height: 40%; }

.page-home .ph-dashboard__widget--wide .fb-panel__foot {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.page-home .ph-dashboard__note {
  margin: 22px 0 0;
}

/* ============ 平板 ============ */
@media (min-width: 720px) {
  .page-home .ph-pulse {
    padding-top: 132px;
  }

  .page-home .ph-numbers__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .page-home .ph-numbers__card--wide {
    grid-column: span 2;
  }

  .page-home .ph-cards__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .page-home .ph-cards__filter {
    grid-column: span 2;
  }

  .page-home .ph-cards__figure {
    grid-column: span 2;
  }

  .page-home .ph-dashboard__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .page-home .ph-dashboard__widget--wide {
    grid-column: span 2;
  }
}

/* ============ 桌面 ============ */
@media (min-width: 1000px) {
  .page-home .ph-pulse {
    padding: 146px 0 58px;
  }

  .page-home .ph-pulse__grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
    gap: 46px;
    align-items: center;
  }

  .page-home .ph-pulse__lead {
    order: 1;
  }

  .page-home .ph-pulse__visual {
    order: 2;
    margin-top: 6px;
  }

  .page-home .ph-numbers {
    padding-top: 84px;
  }

  .page-home .ph-numbers__grid {
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(120px, auto);
  }

  .page-home .ph-numbers__card--wide {
    grid-column: span 2;
  }

  .page-home .ph-numbers__card--tall {
    grid-column: span 2;
    grid-row: span 2;
    display: flex;
    flex-direction: column;
  }

  .page-home .ph-numbers__card--tall .ph-numbers__figure {
    margin-top: auto;
  }

  .page-home .ph-subscribe {
    padding-top: 84px;
  }

  .page-home .ph-subscribe__grid {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
    gap: 32px;
    align-items: start;
  }

  .page-home .ph-subscribe__aside {
    position: sticky;
    top: 108px;
  }

  .page-home .ph-cards {
    padding-top: 84px;
  }

  .page-home .ph-cards__grid {
    grid-template-columns: repeat(3, 1fr);
    align-items: start;
  }

  .page-home .ph-cards__filter {
    grid-column: span 3;
  }

  .page-home .ph-cards__figure {
    grid-column: span 1;
    grid-row: span 2;
  }

  .page-home .ph-scorers {
    padding-top: 84px;
  }

  .page-home .ph-scorers__grid {
    grid-template-columns: minmax(0, 1.55fr) minmax(0, .75fr);
    gap: 30px;
    align-items: start;
  }

  .page-home .ph-scorers__row {
    grid-template-columns: 56px 1.2fr 1fr 76px 64px;
    padding: 14px 18px;
  }

  .page-home .ph-stories {
    padding-top: 84px;
  }

  .page-home .ph-stories__grid {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: 30px;
    align-items: start;
  }

  .page-home .ph-dashboard {
    padding-top: 84px;
    padding-bottom: 104px;
  }

  .page-home .ph-dashboard__grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .page-home .ph-dashboard__widget--wide {
    grid-column: span 1;
    grid-row: span 1;
  }

  .page-home .ph-dashboard__note {
    max-width: 62ch;
  }
}

@media (min-width: 1200px) {
  .page-home .ph-numbers__grid {
    gap: 20px;
  }

  .page-home .ph-pulse__text {
    font-size: 1.06rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-home .ph-stories__item,
  .page-home .ph-star,
  .page-home .ph-cards__tab {
    transition: none;
  }

  .page-home .ph-stories__item:hover {
    transform: none;
  }
}
<<<END>>>
