.page-news {
  background: var(--lj-ink);
  color: var(--lj-text);
  --news-gap: clamp(22px, 4vw, 48px);
  --news-edge: clamp(44px, 6vw, 84px);
}

.page-news__crumb {
  padding-top: calc(var(--lj-header-h) + 18px);
}

/* ---------- 首屏 ---------- */
.page-news .news-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 5vw, 64px) 0 clamp(44px, 7vw, 88px);
}

.page-news .news-hero__slab {
  position: absolute;
  top: -14%;
  right: -8%;
  width: min(720px, 86%);
  height: 124%;
  background:
    linear-gradient(155deg, rgba(0, 229, 160, 0.16), rgba(14, 33, 27, 0) 62%),
    var(--lj-panel);
  clip-path: polygon(22% 0, 100% 0, 100% 100%, 0 72%);
  pointer-events: none;
}

.page-news .news-hero__ghost {
  position: absolute;
  right: clamp(-14px, 1vw, 34px);
  bottom: -4%;
  font-size: clamp(150px, 24vw, 280px);
  line-height: 0.78;
  font-weight: 700;
  color: rgba(0, 229, 160, 0.09);
  pointer-events: none;
  user-select: none;
}

.page-news .news-hero__inner {
  position: relative;
  z-index: 1;
}

.page-news .news-hero__title {
  margin: 10px 0 20px;
  font-size: clamp(38px, 7vw, 76px);
  line-height: 1.02;
  letter-spacing: -0.01em;
  max-width: 16ch;
}

.page-news .news-hero__lead {
  max-width: 58ch;
  margin: 0 0 30px;
  color: var(--lj-soft);
}

.page-news .news-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 40px;
}

.page-news .news-hero__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 20px;
  margin: 0;
  padding-top: 24px;
  border-top: 1px solid var(--lj-line);
  max-width: 620px;
}

.page-news .news-hero__stat {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.page-news .news-hero__stat dt {
  font-size: 12px;
  letter-spacing: 0.1em;
  color: var(--lj-muted);
}

.page-news .news-hero__stat dd {
  margin: 0;
  font-size: clamp(28px, 5vw, 44px);
  line-height: 1;
}

/* ---------- 通用小节标题 ---------- */
.page-news .news-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 18px;
}

/* ---------- 赛季时间轴 ---------- */
.page-news .news-axis__band {
  margin: clamp(20px, 4vw, 40px) 0 0;
  height: clamp(140px, 24vw, 300px);
  overflow: hidden;
  border-top: 1px solid var(--lj-line);
  border-bottom: 1px solid var(--lj-line);
}

.page-news .news-axis__band img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.55) contrast(1.06) brightness(0.72);
}

.page-news .news-axis__scroller {
  padding-bottom: 12px;
}

.page-news .news-axis__track {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0 var(--lj-gutter);
  min-width: max-content;
}

.page-news .news-axis__node {
  position: relative;
  flex: 0 0 auto;
  width: clamp(216px, 25vw, 300px);
  padding: 40px 22px 8px 0;
  scroll-snap-align: start;
}

.page-news .news-axis__node::before {
  content: "";
  position: absolute;
  top: 17px;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--lj-line);
}

.page-news .news-axis__dot {
  position: absolute;
  top: 12px;
  left: 0;
  width: 11px;
  height: 11px;
  background: var(--lj-accent);
  transform: rotate(45deg);
}

.page-news .news-axis__node--warm .news-axis__dot {
  background: var(--lj-warm);
}

.page-news .news-axis__no {
  display: block;
  font-size: 13px;
  color: var(--lj-muted);
  margin-bottom: 4px;
}

.page-news .news-axis__name {
  margin: 0 0 8px;
  font-size: 20px;
}

.page-news .news-axis__desc {
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--lj-muted);
}

/* ---------- 系列导航 ---------- */
.page-news .news-series__grid {
  gap: var(--news-gap);
  margin-top: 30px;
}

.page-news .news-series__lead {
  max-width: 62ch;
}

.page-news .news-series__col {
  display: grid;
  gap: 20px;
}

.page-news .news-series__card {
  position: relative;
  border: 1px solid var(--lj-line);
  background: var(--lj-panel);
  padding: 24px 22px 22px;
}

.page-news .news-series__card:nth-child(2) {
  box-shadow: 10px 10px 0 rgba(0, 229, 160, 0.08);
}

.page-news .news-series__card:nth-child(3) {
  box-shadow: 10px 10px 0 rgba(255, 122, 61, 0.08);
}

.page-news .news-series__no {
  display: block;
  font-size: 34px;
  line-height: 1;
  color: rgba(185, 245, 220, 0.35);
  margin-bottom: 12px;
}

.page-news .news-series__name {
  margin: 0 0 10px;
  font-size: 24px;
}

.page-news .news-series__text {
  margin: 0 0 14px;
  font-size: 15px;
  line-height: 1.78;
  color: var(--lj-soft);
}

.page-news .news-series__fields {
  margin: 0;
  font-family: var(--lj-font-num);
  font-size: 12px;
  letter-spacing: 0.04em;
  color: var(--lj-muted);
}

.page-news .news-series__aside {
  margin-top: 6px;
}

/* ---------- 图片框 ---------- */
.page-news .news-frame {
  margin: 0;
}

.page-news .news-frame img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border: 1px solid var(--lj-line);
  filter: saturate(0.6) contrast(1.04) brightness(0.82);
}

.page-news .news-frame--pitch img {
  aspect-ratio: 7 / 4;
}

.page-news .news-frame__cap {
  margin-top: 10px;
  font-family: var(--lj-font-num);
  font-size: 12px;
  letter-spacing: 0.04em;
  color: var(--lj-muted);
}

/* ---------- 条目列表与筛选 ---------- */
.page-news .news-digest {
  position: relative;
  margin-top: 18px;
}

.page-news .news-filter__input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.page-news .news-filter__bar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 6px 0 4px;
}

.page-news .news-filter__btn {
  display: inline-flex;
  align-items: center;
  padding: 7px 15px;
  border: 1px solid var(--lj-line);
  color: var(--lj-muted);
  font-family: var(--lj-font-num);
  font-size: 13px;
  letter-spacing: 0.04em;
  cursor: pointer;
  transition: color 0.25s var(--lj-ease), border-color 0.25s var(--lj-ease), background-color 0.25s var(--lj-ease);
}

.page-news .news-filter__btn:hover {
  color: var(--lj-text);
  border-color: var(--lj-soft);
}

.page-news #nf-all:checked ~ .news-filter__bar .news-filter__btn[for="nf-all"],
.page-news #nf-schedule:checked ~ .news-filter__bar .news-filter__btn[for="nf-schedule"],
.page-news #nf-review:checked ~ .news-filter__bar .news-filter__btn[for="nf-review"],
.page-news #nf-transfer:checked ~ .news-filter__bar .news-filter__btn[for="nf-transfer"] {
  background: var(--lj-accent);
  border-color: var(--lj-accent);
  color: var(--lj-print);
}

.page-news .news-digest__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.page-news .news-item {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 4px 16px;
  padding: 26px 0;
  border-top: 1px solid var(--lj-line);
  transition: opacity 0.35s var(--lj-ease);
}

.page-news .news-item__no {
  font-size: 15px;
  color: var(--lj-muted);
  padding-top: 4px;
}

.page-news .news-item__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 14px;
  margin: 0 0 10px;
}

.page-news .news-item__when {
  font-family: var(--lj-font-num);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--lj-muted);
}

.page-news .news-item__title {
  margin: 0 0 10px;
  font-size: clamp(19px, 2.4vw, 24px);
}

.page-news .news-item__summary {
  margin: 0;
  font-size: 15px;
  line-height: 1.78;
  color: var(--lj-soft);
}

.page-news .news-item__fields {
  margin: 12px 0 0;
  font-family: var(--lj-font-num);
  font-size: 12px;
  letter-spacing: 0.04em;
  color: var(--lj-muted);
}

.page-news .news-figure {
  padding: 26px 0;
  border-top: 1px solid var(--lj-line);
  transition: opacity 0.35s var(--lj-ease);
}

/* 筛选：未选中的系列淡出 */
.page-news #nf-schedule:checked ~ .news-digest__list .news-item--review,
.page-news #nf-schedule:checked ~ .news-digest__list .news-item--transfer,
.page-news #nf-schedule:checked ~ .news-digest__list .news-figure--review,
.page-news #nf-schedule:checked ~ .news-digest__list .news-figure--transfer,
.page-news #nf-review:checked ~ .news-digest__list .news-item--schedule,
.page-news #nf-review:checked ~ .news-digest__list .news-item--transfer,
.page-news #nf-review:checked ~ .news-digest__list .news-figure--transfer,
.page-news #nf-transfer:checked ~ .news-digest__list .news-item--schedule,
.page-news #nf-transfer:checked ~ .news-digest__list .news-item--review,
.page-news #nf-transfer:checked ~ .news-digest__list .news-figure--review {
  opacity: 0.22;
}

/* ---------- 赛季节点叙事 ---------- */
.page-news .news-phases {
  list-style: none;
  margin: 26px 0 0;
  padding: 0 0 24px;
  display: grid;
  gap: 26px;
}

.page-news .news-phases__item {
  position: relative;
  border-top: 2px solid var(--lj-line);
  padding-top: 18px;
}

.page-news .news-phases__item::after {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 46px;
  height: 2px;
  background: var(--lj-accent);
}

.page-news .news-phases__item:nth-child(2)::after {
  background: var(--lj-warm);
}

.page-news .news-phases__no {
  display: block;
  font-size: 38px;
  line-height: 1;
  color: rgba(185, 245, 220, 0.28);
  margin-bottom: 12px;
}

.page-news .news-phases__item h3 {
  margin: 0 0 10px;
  font-size: 22px;
}

.page-news .news-phases__item p {
  margin: 0;
  font-size: 15px;
  line-height: 1.78;
  color: var(--lj-muted);
}

/* ---------- 编辑部在跟什么 ---------- */
.page-news .news-watch {
  gap: var(--news-gap);
  align-items: start;
}

.page-news .news-watch__text {
  margin: 18px 0 0;
  font-size: 15px;
  line-height: 1.78;
  color: var(--lj-muted);
}

.page-news .news-inline-link {
  color: var(--lj-accent);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.page-news .news-watch__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.page-news .news-watch__item {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 14px;
  padding: 18px 0;
  border-bottom: 1px dashed var(--lj-line);
}

.page-news .news-watch__item:first-child {
  border-top: 1px dashed var(--lj-line);
}

.page-news .news-watch__no {
  font-size: 13px;
  color: var(--lj-accent);
  padding-top: 6px;
}

.page-news .news-watch__title {
  margin: 0 0 8px;
  font-size: 19px;
}

.page-news .news-watch__body p {
  margin: 0;
  font-size: 14px;
  line-height: 1.78;
  color: var(--lj-muted);
}

/* ---------- 选题征集 ---------- */
.page-news .news-call__box {
  position: relative;
  border: 1px solid var(--lj-line);
  background: var(--lj-panel);
  padding: clamp(26px, 5vw, 54px);
  box-shadow: 14px 14px 0 var(--lj-print);
}

.page-news .news-call__lead {
  max-width: 62ch;
  margin: 18px 0 28px;
  font-size: 16px;
  line-height: 1.78;
  color: var(--lj-soft);
}

.page-news .news-call__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ---------- 中屏 ---------- */
@media (min-width: 640px) {
  .page-news .news-hero__stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 720px) {
  .page-news .news-phases {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 28px;
  }
}

@media (min-width: 900px) {
  .page-news .news-item {
    grid-template-columns: 84px minmax(0, 1fr);
    padding: 34px 0;
    column-gap: 22px;
  }

  .page-news .news-item__no {
    font-size: 17px;
  }

  .page-news .news-figure {
    padding: 34px 0;
  }

  .page-news .news-figure--review {
    padding-left: var(--news-edge);
  }

  .page-news .news-figure--transfer {
    padding-right: var(--news-edge);
  }
}

@media (min-width: 900px) and (hover: hover) {
  .page-news .news-item__summary {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.42s var(--lj-ease), opacity 0.32s var(--lj-ease);
  }

  .page-news .news-item:hover .news-item__summary,
  .page-news .news-item:focus-within .news-item__summary {
    max-height: 160px;
    opacity: 1;
  }
}

@media (min-width: 1080px) {
  .page-news .news-phases {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px;
    padding-bottom: 48px;
  }

  .page-news .news-phases__item:nth-child(even) {
    transform: translateY(26px);
  }

  .page-news .news-series__aside {
    margin-top: 34px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-news .news-item__summary,
  .page-news .news-item,
  .page-news .news-figure,
  .page-news .news-filter__btn {
    transition: none;
  }

  .page-news .news-phases__item:nth-child(even) {
    transform: none;
  }
}
