.page-home {
  overflow-x: hidden;
}

.page-home img {
  max-width: 100%;
  height: auto;
}

/* ========== 页面上下文条 ========== */
.page-home .home-context {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--lb-space-2) var(--lb-space-4);
  padding-top: var(--lb-space-4);
  padding-bottom: var(--lb-space-3);
  border-bottom: 1px solid var(--lb-line);
  margin-bottom: var(--lb-space-5);
}

.page-home .home-context__crumb {
  font-family: var(--lb-font-data);
  font-size: 0.85rem;
  color: var(--lb-gray);
  display: inline-flex;
  align-items: center;
  gap: var(--lb-space-2);
}

.page-home .home-context__crumb span {
  color: var(--lb-gold);
}

.page-home .home-context__note {
  font-family: var(--lb-font-data);
  font-size: 0.78rem;
  color: var(--lb-gray);
  letter-spacing: 0.04em;
  display: inline-flex;
  align-items: center;
  gap: var(--lb-space-2);
}

.page-home .home-context__dot {
  width: 8px;
  height: 8px;
  background: var(--lb-red);
  display: inline-block;
  border-radius: 50%;
}

/* ========== 开场：内容目录与主题声明 ========== */
.page-home .home-opening {
  padding-bottom: var(--lb-space-6);
}

.page-home .home-opening__topline {
  margin-bottom: var(--lb-space-5);
  border-left: 6px solid var(--lb-gold);
  padding-left: var(--lb-space-4);
}

.page-home .home-opening__topline h1 {
  font-family: var(--lb-font-head);
  font-weight: 900;
  font-size: clamp(1.6rem, 4.4vw, 2.8rem);
  line-height: 1.15;
  color: var(--lb-deep);
  letter-spacing: -0.02em;
  margin: 0;
}

.page-home .home-opening__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--lb-space-5);
}

.page-home .home-opening__aside {
  position: relative;
  align-self: start;
  border-left: 2px solid var(--lb-deep);
  padding-left: var(--lb-space-4);
}

.page-home .home-opening__heading {
  font-family: var(--lb-font-head);
  font-weight: 800;
  font-size: 1.05rem;
  line-height: 1.35;
  color: var(--lb-deep);
  margin: var(--lb-space-2) 0 0;
}

.page-home .home-opening__toc {
  list-style: none;
  margin: var(--lb-space-4) 0 0;
  padding: 0;
}

.page-home .home-opening__toc li + li {
  margin-top: var(--lb-space-3);
}

.page-home .home-opening__toc a {
  display: flex;
  align-items: baseline;
  gap: var(--lb-space-2);
  font-family: var(--lb-font-head);
  font-weight: 700;
  font-size: 0.95rem;
  color: var(--lb-ink);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
  transition: color var(--lb-transition), border-color var(--lb-transition);
}

.page-home .home-opening__toc a:hover,
.page-home .home-opening__toc a:focus-visible {
  color: var(--lb-deep);
  border-bottom-color: var(--lb-gold);
}

.page-home .home-opening__num {
  font-family: var(--lb-font-data);
  font-size: 0.85rem;
  color: var(--lb-gold);
  min-width: 2em;
}

.page-home .home-opening__note {
  margin-top: var(--lb-space-4);
}

.page-home .home-opening__lead {
  font-family: var(--lb-font-body);
  font-size: clamp(1rem, 1.6vw, 1.2rem);
  line-height: 1.9;
  color: var(--lb-ink);
  max-width: 62ch;
  margin: 0 0 var(--lb-space-5);
}

.page-home .home-opening__media {
  margin: 0 0 var(--lb-space-5);
}

.page-home .home-opening__media .lb-media {
  border-radius: 0;
}

.page-home .home-opening__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--lb-space-3);
  border-top: 1px solid var(--lb-line);
  padding-top: var(--lb-space-4);
}

.page-home .home-stat {
  position: relative;
  padding: var(--lb-space-3);
  background: var(--lb-paper);
  border: 1px solid var(--lb-line);
  transition: border-color var(--lb-transition);
}

.page-home .home-stat::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: var(--lb-silver);
  transition: background var(--lb-transition);
}

.page-home .home-stat:hover {
  border-color: var(--lb-gold);
}

.page-home .home-stat:hover::before {
  background: var(--lb-gold);
}

.page-home .home-stat__label {
  display: block;
  font-family: var(--lb-font-head);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--lb-gray);
}

.page-home .home-stat__value {
  display: block;
  font-family: var(--lb-font-data);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--lb-deep);
  margin: var(--lb-space-1) 0;
}

.page-home .home-stat__value small {
  font-size: 0.8rem;
  font-weight: 400;
  color: var(--lb-gray);
  margin-left: 2px;
}

.page-home .home-stat__desc {
  font-family: var(--lb-font-body);
  font-size: 0.85rem;
  color: var(--lb-gray);
}

.page-home .home-stat--gold .home-stat__value {
  color: var(--lb-gold);
}

/* ========== CN轮次安排 ========== */
.page-home .home-rounds {
  background: #ECE9E3;
  border-top: 1px solid var(--lb-line);
  border-bottom: 1px solid var(--lb-line);
  padding: var(--lb-space-6) 0;
}

.page-home .home-rounds__grid,
.page-home .home-archive__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--lb-space-5);
}

.page-home .home-rounds__aside,
.page-home .home-archive__aside {
  align-self: start;
  border-left: 2px solid var(--lb-gold);
  padding-left: var(--lb-space-4);
}

.page-home .home-rounds__aside .lb-btn,
.page-home .home-archive__aside .lb-btn {
  margin-top: var(--lb-space-4);
}

.page-home .home-rounds__main,
.page-home .home-archive__main {
  min-width: 0;
}

/* tabs */
.page-home .home-rounds__tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-bottom: 2px solid var(--lb-line);
}

.page-home .home-rounds__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.page-home .home-rounds__tab {
  font-family: var(--lb-font-head);
  font-weight: 700;
  font-size: 0.9rem;
  text-align: center;
  color: var(--lb-gray);
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  padding: var(--lb-space-3) var(--lb-space-2);
  cursor: pointer;
  transition: color var(--lb-transition), border-color var(--lb-transition), background var(--lb-transition);
}

.page-home .home-rounds__input:checked + .home-rounds__tab {
  color: var(--lb-deep);
  background: var(--lb-paper);
  border-bottom-color: var(--lb-gold);
}

.page-home .home-rounds__input:focus-visible + .home-rounds__tab {
  outline: 2px solid var(--lb-gold);
  outline-offset: -2px;
}

.page-home .home-rounds__panel {
  display: none;
  grid-column: 1 / -1;
  background: var(--lb-paper);
  border: 1px solid var(--lb-line);
  border-top: 0;
  padding: var(--lb-space-4);
}

.page-home #season-2024:checked ~ .home-rounds__panel--2024,
.page-home #season-2023:checked ~ .home-rounds__panel--2023,
.page-home #season-2022:checked ~ .home-rounds__panel--2022 {
  display: block;
}

.page-home .home-rounds__intro {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--lb-space-3);
  font-family: var(--lb-font-body);
  font-size: 0.95rem;
  color: var(--lb-ink);
  margin-bottom: var(--lb-space-3);
}

.page-home .home-rounds__intro p {
  flex: 1 1 28ch;
  margin: 0;
}

.page-home .home-rounds__progress {
  display: flex;
  align-items: center;
  gap: var(--lb-space-3);
  margin-top: var(--lb-space-3);
}

.page-home .home-rounds__bar {
  flex: 1;
  height: 8px;
  background: var(--lb-line);
  overflow: hidden;
}

.page-home .home-rounds__bar span {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, var(--lb-deep) 0%, var(--lb-gold) 100%);
}

.page-home .home-rounds__progress-num {
  font-family: var(--lb-font-data);
  font-size: 0.85rem;
  color: var(--lb-deep);
  white-space: nowrap;
}

.page-home .home-rounds__timeline {
  list-style: none;
  margin: var(--lb-space-4) 0 0;
  padding: 0;
  display: grid;
  gap: var(--lb-space-2);
}

.page-home .home-rounds__timeline li {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--lb-space-2);
  align-items: center;
  padding: var(--lb-space-3);
  border-left: 3px solid var(--lb-silver);
  background: #FAF8F4;
  transition: border-color var(--lb-transition), background var(--lb-transition);
}

.page-home .home-rounds__timeline li:hover {
  border-left-color: var(--lb-gold);
  background: #FFFDF8;
}

.page-home .home-rounds__phase {
  font-family: var(--lb-font-head);
  font-weight: 700;
  color: var(--lb-deep);
}

.page-home .home-rounds__timeline li > span:nth-child(2) {
  font-family: var(--lb-font-body);
  color: var(--lb-ink);
  text-align: right;
}

.page-home .home-rounds__timeline li .lb-tag {
  grid-column: 1 / -1;
  justify-self: start;
}

.page-home .home-rounds__media {
  margin-top: var(--lb-space-5);
}

.page-home .home-rounds__media img {
  display: block;
  width: 100%;
  height: auto;
}

/* ========== 大陆版历史数据 ========== */
.page-home .home-archive {
  padding: var(--lb-space-6) 0;
}

.page-home .home-archive__lead {
  font-family: var(--lb-font-body);
  font-size: 1.05rem;
  line-height: 1.9;
  color: var(--lb-ink);
  margin: 0 0 var(--lb-space-5);
}

.page-home .home-archive__cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--lb-space-3);
  margin-bottom: var(--lb-space-5);
}

.page-home .home-archive__card {
  padding: var(--lb-space-4);
}

.page-home .home-archive__card > span {
  display: block;
  font-family: var(--lb-font-head);
  font-weight: 700;
  font-size: 0.95rem;
  color: var(--lb-deep);
  margin-bottom: var(--lb-space-2);
}

.page-home .home-archive__card > p {
  font-family: var(--lb-font-body);
  font-size: 0.9rem;
  line-height: 1.7;
  color: var(--lb-gray);
  margin: 0;
}

/* ========== 体育赛事战报专栏 ========== */
.page-home .home-insights {
  background: var(--lb-deep);
  color: var(--lb-paper);
  padding: var(--lb-space-6) 0;
  border-bottom: 4px solid var(--lb-red);
}

.page-home .home-insights__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--lb-space-5);
}

.page-home .home-insights__visual {
  order: 1;
}

.page-home .home-insights__visual .lb-media {
  margin: 0;
  max-height: 520px;
  overflow: hidden;
}

.page-home .home-insights__visual img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.page-home .home-insights__main {
  order: 0;
}

.page-home .home-insights .lb-kicker {
  color: var(--lb-gold);
}

.page-home .home-insights h2 {
  color: var(--lb-paper);
  margin: var(--lb-space-2) 0 var(--lb-space-3);
}

.page-home .home-insights__lead {
  font-family: var(--lb-font-body);
  font-size: 1rem;
  line-height: 1.9;
  color: #DAD6CF;
  margin: 0 0 var(--lb-space-4);
}

.page-home .home-insights__filterwrap {
  margin-top: var(--lb-space-4);
}

.page-home .home-insights__filterwrap > input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.page-home .home-insights__filterwrap > label {
  display: inline-block;
  font-family: var(--lb-font-head);
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--lb-silver);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.25);
  padding: var(--lb-space-2) var(--lb-space-3);
  margin: 0 var(--lb-space-2) var(--lb-space-2) 0;
  cursor: pointer;
  transition: all var(--lb-transition);
}

.page-home .home-insights__filterwrap > input:checked + label {
  color: var(--lb-deep);
  background: var(--lb-gold);
  border-color: var(--lb-gold);
}

.page-home .home-insights__filterwrap > input:focus-visible + label {
  outline: 2px solid var(--lb-paper);
  outline-offset: 2px;
}

.page-home .home-insights__list {
  list-style: none;
  margin: var(--lb-space-3) 0 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.page-home .home-insights__list li {
  display: block;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.page-home .home-insights__list a {
  display: flex;
  align-items: baseline;
  gap: var(--lb-space-3);
  padding: var(--lb-space-3) 0;
  font-family: var(--lb-font-body);
  font-size: 0.95rem;
  color: #EDE9E2;
  text-decoration: none;
  transition: color var(--lb-transition), padding-left var(--lb-transition);
}

.page-home .home-insights__list a:hover,
.page-home .home-insights__list a:focus-visible {
  color: var(--lb-gold);
  padding-left: var(--lb-space-2);
}

.page-home .home-insights__list a > span {
  font-family: var(--lb-font-data);
  font-size: 0.75rem;
  color: var(--lb-silver);
  white-space: nowrap;
  min-width: 4.2em;
}

.page-home .home-insights__filterwrap #cat-season:checked ~ .home-insights__list li:not(.home-insights__item--season),
.page-home .home-insights__filterwrap #cat-month:checked ~ .home-insights__list li:not(.home-insights__item--month),
.page-home .home-insights__filterwrap #cat-special:checked ~ .home-insights__list li:not(.home-insights__item--special),
.page-home .home-insights__filterwrap #cat-data:checked ~ .home-insights__list li:not(.home-insights__item--data),
.page-home .home-insights__filterwrap #cat-preview:checked ~ .home-insights__list li:not(.home-insights__item--preview) {
  display: none;
}

.page-home .home-insights__foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--lb-space-3);
  margin-top: var(--lb-space-5);
}

.page-home .home-insights__meta {
  font-family: var(--lb-font-data);
  font-size: 0.78rem;
  color: var(--lb-silver);
  border-left: 1px solid rgba(255, 255, 255, 0.3);
  padding-left: var(--lb-space-3);
}

/* ========== 底部赛季归档横幅 ========== */
.page-home .home-archive-ban {
  background: linear-gradient(180deg, var(--lb-paper) 0%, #E9E4DB 100%);
  padding: var(--lb-space-6) 0;
}

.page-home .home-archive-ban__figure {
  margin: 0 0 var(--lb-space-4);
}

.page-home .home-archive-ban__figure img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.page-home .home-archive-ban__content {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--lb-space-3);
}

.page-home .home-archive-ban__label {
  font-family: var(--lb-font-head);
  font-weight: 700;
  font-size: 0.95rem;
  color: var(--lb-deep);
}

.page-home .home-archive-ban__seasons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--lb-space-2);
}

.page-home .home-archive-ban__seasons a {
  font-family: var(--lb-font-data);
  font-size: 0.9rem;
  color: var(--lb-deep);
  text-decoration: none;
  border: 1px solid var(--lb-deep);
  padding: 6px 14px;
  transition: all var(--lb-transition);
}

.page-home .home-archive-ban__seasons a:hover,
.page-home .home-archive-ban__seasons a:focus-visible {
  background: var(--lb-deep);
  color: var(--lb-gold);
  border-color: var(--lb-deep);
}

.page-home .home-archive-ban__content > p {
  flex-basis: 100%;
  font-family: var(--lb-font-body);
  font-size: 0.9rem;
  color: var(--lb-gray);
  margin: 0;
}

/* ========== 响应式增强 ========== */
@media (min-width: 640px) {
  .page-home .home-opening__stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .page-home .home-archive__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-home .home-rounds__timeline li {
    grid-template-columns: 1fr auto auto;
  }

  .page-home .home-rounds__timeline li .lb-tag {
    grid-column: auto;
    justify-self: end;
  }
}

@media (min-width: 960px) {
  .page-home .home-opening {
    padding-bottom: var(--lb-space-7);
  }

  .page-home .home-opening__grid {
    grid-template-columns: 320px minmax(0, 1fr);
    gap: var(--lb-space-6);
  }

  .page-home .home-rounds__grid,
  .page-home .home-archive__grid {
    grid-template-columns: 300px minmax(0, 1fr);
    gap: var(--lb-space-6);
  }

  .page-home .home-insights__grid {
    grid-template-columns: 360px minmax(0, 1fr);
    gap: var(--lb-space-6);
  }

  .page-home .home-insights__visual {
    order: 0;
  }

  .page-home .home-insights__main {
    order: 1;
  }

  .page-home .home-insights__visual .lb-media {
    height: 100%;
    min-height: 560px;
  }

  .page-home .home-insights__visual img {
    height: 100%;
    max-height: 640px;
  }
}
