.page-home {
  display: block;
  padding-bottom: var(--sp-7);
}

/* ---------- 页面上下文 ---------- */
.page-home .home-context {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--sp-2) var(--sp-4);
  padding-top: var(--sp-5);
  padding-bottom: var(--sp-2);
}

.page-home .home-context__hint {
  margin: 0;
  font-size: 14px;
  color: var(--cool-300);
}

/* ---------- 首屏分屏 ---------- */
.page-home .home-hero {
  padding-top: var(--sp-4);
}

.page-home .hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--sp-5);
}

.page-home .hero-copy {
  display: flex;
  flex-direction: column;
  gap: var(--sp-4);
}

.page-home .hero-copy .lede {
  max-width: 34em;
}

.page-home .hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-3);
}

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

.page-home .hero-facts li {
  position: relative;
  padding-left: var(--sp-5);
  font-size: 15px;
  color: var(--cool-300);
}

.page-home .hero-facts li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 14px;
  height: 2px;
  background: var(--amber-400);
}

.page-home .hero-visual {
  position: relative;
  display: grid;
}

.page-home .hero-visual .media {
  margin: 0;
  border-radius: var(--r-panel);
  overflow: hidden;
}

.page-home .hero-visual .media__img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.page-home .scoreboard {
  position: relative;
  margin: calc(var(--sp-5) * -1) var(--sp-4) 0;
  padding: var(--sp-4);
  border: 1px solid var(--line-200);
  border-radius: var(--r-card);
  background: rgba(12, 33, 26, 0.95);
  box-shadow: var(--shadow-2);
}

.page-home .scoreboard__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--sp-3);
}

.page-home .scoreboard .score {
  display: flex;
  align-items: baseline;
  gap: var(--sp-1);
  margin: var(--sp-3) 0 var(--sp-2);
  font-family: var(--font-mono);
  font-size: 44px;
  font-weight: 700;
  line-height: 1;
  color: var(--chalk-050);
  letter-spacing: -0.02em;
}

.page-home .scoreboard .score__sep {
  color: var(--amber-400);
  font-size: 30px;
}

.page-home .scoreboard__teams {
  display: flex;
  justify-content: space-between;
  gap: var(--sp-2);
  margin-bottom: var(--sp-3);
}

.page-home .scoreboard__meta {
  margin: 0;
  font-size: 13px;
  color: var(--cool-300);
}

/* ---------- 今日赛程 ---------- */
.page-home .schedule-banner {
  margin: var(--sp-4) 0 var(--sp-5);
  border-radius: var(--r-panel);
  overflow: hidden;
}

.page-home .schedule-banner .media__img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.page-home .slot-pills {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2);
  margin-bottom: var(--sp-5);
}

.page-home .slot-pill {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 var(--sp-4);
  border: 1px solid var(--line-200);
  border-radius: var(--r-pill);
  font-size: 14px;
  letter-spacing: 0.04em;
  color: var(--chalk-050);
  text-decoration: none;
  transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease),
    color var(--dur) var(--ease);
}

.page-home .slot-pill:hover {
  border-color: var(--amber-200);
  background: rgba(242, 178, 60, 0.12);
}

.page-home .slot-pill--current {
  background: var(--amber-400);
  border-color: var(--amber-400);
  color: var(--ink-950);
  font-weight: 700;
}

.page-home .slot-pill:focus-visible {
  outline: 2px solid var(--amber-200);
  outline-offset: 2px;
}

.page-home .timeline-block {
  margin-top: var(--sp-5);
  scroll-margin-top: var(--sp-6);
}

.page-home .timeline-block__title {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--sp-3);
  margin: 0 0 var(--sp-3);
  font-size: 18px;
  color: var(--chalk-050);
}

.page-home .timeline-block__title .num {
  font-size: 13px;
  font-weight: 400;
  color: var(--cool-300);
}

.page-home .timeline-panel {
  padding: 0;
  overflow: hidden;
}

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

.page-home .timeline-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sp-2) var(--sp-3);
  padding: var(--sp-3) var(--sp-4);
  border-top: 1px solid var(--line-200);
  transition: background var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}

.page-home .timeline-row:first-child {
  border-top: 0;
}

.page-home .timeline-row:hover {
  background: rgba(20, 58, 44, 0.55);
}

.page-home .timeline-row--live {
  background: rgba(255, 90, 54, 0.08);
  box-shadow: inset 2px 0 0 var(--signal-500);
}

.page-home .timeline-row__time {
  min-width: 58px;
  font-size: 18px;
  color: var(--chalk-050);
}

.page-home .timeline-row__teams {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sp-2);
  flex: 1 1 200px;
}

.page-home .timeline-row__vs {
  font-size: 13px;
  color: var(--cool-300);
}

.page-home .timeline-row__state {
  margin-left: auto;
  font-size: 13px;
  color: var(--cool-300);
}

.page-home .timeline-row__state b {
  font-family: var(--font-mono);
  font-size: 15px;
  color: var(--chalk-050);
}

.page-home .timeline-row__state--live,
.page-home .timeline-row__state--live b {
  color: var(--signal-500);
}

/* ---------- 关注的球队 ---------- */
.page-home .team-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--sp-5);
}

.page-home .team-copy {
  display: flex;
  flex-direction: column;
  gap: var(--sp-4);
}

.page-home .team-copy p {
  margin: 0;
  max-width: 34em;
}

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

.page-home .team-fields li {
  position: relative;
  padding-left: var(--sp-5);
  font-size: 15px;
  color: var(--cool-300);
}

.page-home .team-fields li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 10px;
  height: 10px;
  border: 1.5px solid var(--amber-400);
  border-radius: 50%;
}

.page-home .team-limit {
  font-size: 15px;
  color: var(--cool-300);
}

.page-home .team-limit b {
  color: var(--amber-400);
  font-family: var(--font-mono);
  font-size: 17px;
}

.page-home .team-summary {
  align-self: start;
}

.page-home .team-summary .panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sp-3);
}

.page-home .team-summary__list {
  display: grid;
}

.page-home .team-summary__row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--sp-1) var(--sp-3);
  padding: var(--sp-3) 0;
  border-top: 1px solid var(--line-200);
}

.page-home .team-summary__row:first-child {
  border-top: 0;
}

.page-home .team-summary__name {
  font-weight: 700;
  color: var(--chalk-050);
}

.page-home .team-summary__record {
  font-family: var(--font-mono);
  font-size: 13px;
  color: var(--amber-400);
}

.page-home .team-summary__next {
  grid-column: 1 / -1;
  font-size: 13px;
  color: var(--cool-300);
}

/* ---------- 跨端与历史：非对称双栏 ---------- */
.page-home .split {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--sp-5);
  align-items: start;
}

.page-home .sync-figure,
.page-home .history-figure {
  margin: 0;
  border-radius: var(--r-panel);
  overflow: hidden;
}

.page-home .sync-figure .media__img,
.page-home .history-figure .media__img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.page-home .split-copy {
  display: flex;
  flex-direction: column;
  gap: var(--sp-4);
}

.page-home .split-copy p {
  margin: 0;
  max-width: 34em;
}

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

.page-home .sync-notes li {
  padding: var(--sp-3) var(--sp-4);
  border-left: 2px solid var(--amber-400);
  background: var(--pitch-900);
  border-radius: 0 var(--r-card) var(--r-card) 0;
  font-size: 15px;
  color: var(--cool-300);
}

.page-home .sync-notes b {
  color: var(--chalk-050);
}

.page-home .sync-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-3);
}

.page-home .chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2);
}

.page-home .chip {
  display: inline-flex;
  align-items: center;
  padding: 6px var(--sp-3);
  border: 1px solid var(--line-200);
  border-radius: var(--r-pill);
  font-size: 13px;
  letter-spacing: 0.06em;
  color: var(--cool-300);
}

/* ---------- 新手指引 ---------- */
.page-home .step-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--sp-4);
}

.page-home .step-item {
  display: flex;
  flex-direction: column;
  gap: var(--sp-3);
  padding: var(--sp-5) var(--sp-4) var(--sp-4);
  border: 1px solid var(--line-200);
  border-radius: var(--r-card);
  background: linear-gradient(160deg, var(--pitch-900), var(--ink-950) 78%);
  box-shadow: var(--shadow-1);
}

.page-home .step-item__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: var(--r-pill);
  background: var(--amber-400);
  color: var(--ink-950);
  font-size: 18px;
  font-weight: 700;
}

.page-home .step-item__title {
  margin: 0;
  font-size: 20px;
  color: var(--chalk-050);
}

.page-home .step-item p {
  margin: 0;
  font-size: 15px;
  color: var(--cool-300);
}

.page-home .start-more {
  margin: var(--sp-5) 0 0;
  font-size: 15px;
  color: var(--cool-300);
}

.page-home .link-amber {
  color: var(--amber-400);
  text-decoration: none;
  border-bottom: 1px solid rgba(242, 178, 60, 0.45);
}

.page-home .link-amber:hover {
  color: var(--amber-200);
  border-bottom-color: var(--amber-200);
}

.page-home .link-amber:focus-visible,
.page-home .next-card__link:focus-visible {
  outline: 2px solid var(--amber-200);
  outline-offset: 2px;
}

/* ---------- 继续深入 ---------- */
.page-home .next-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--sp-4);
}

.page-home .next-card {
  display: flex;
  flex-direction: column;
  gap: var(--sp-3);
}

.page-home .next-card p {
  margin: 0;
  font-size: 15px;
  color: var(--cool-300);
}

.page-home .next-card .panel__title {
  margin: 0;
  font-size: 20px;
}

.page-home .next-card__link {
  margin-top: auto;
  align-self: flex-start;
  font-weight: 700;
  color: var(--amber-400);
  text-decoration: none;
  border-bottom: 1px solid rgba(242, 178, 60, 0.45);
  transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.page-home .next-card__link:hover {
  color: var(--amber-200);
  border-bottom-color: var(--amber-200);
}

.page-home .home-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--sp-4);
  margin-top: var(--sp-6);
  padding-top: var(--sp-5);
  border-top: 1px solid var(--line-200);
}

.page-home .home-foot__text {
  margin: 0;
  max-width: 42em;
  font-size: 15px;
  color: var(--cool-300);
}

.page-home .home-foot__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-3);
}

/* ---------- 桌面栅格 ---------- */
@media (min-width: 760px) {
  .page-home .step-list {
    grid-template-columns: repeat(3, 1fr);
  }

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

@media (min-width: 960px) {
  .page-home .hero-grid {
    grid-template-columns: 7fr 5fr;
    gap: var(--sp-6);
    align-items: start;
  }

  .page-home .scoreboard {
    margin-left: calc(var(--sp-6) * -1);
    margin-right: var(--sp-5);
  }

  .page-home .team-grid {
    grid-template-columns: 7fr 5fr;
    gap: var(--sp-6);
  }

  .page-home .split {
    gap: var(--sp-6);
  }

  .page-home .split--media-first {
    grid-template-columns: 5fr 7fr;
  }

  .page-home .split--copy-first {
    grid-template-columns: 7fr 5fr;
  }

  .page-home .timeline-row {
    padding: var(--sp-4) var(--sp-5);
  }
}

@media (min-width: 1200px) {
  .page-home .hero-grid {
    gap: var(--sp-7);
  }

  .page-home .split,
  .page-home .team-grid {
    gap: var(--sp-7);
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-home .slot-pill,
  .page-home .timeline-row,
  .page-home .next-card__link {
    transition: none;
  }
}
<<<END>>>
