.page-news {
  --news-rule: rgba(108, 138, 128, .28);
  --news-rule-ink: rgba(6, 18, 14, .14);
  background: var(--night-green);
  color: var(--score-white);
}

/* 面包屑 */
.page-news .breadcrumbs {
  padding-block: 18px 4px;
  background: var(--night-green);
}

.page-news .breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .08em;
  color: var(--graphite);
}

.page-news .breadcrumbs__link {
  color: var(--graphite);
  text-decoration: none;
}

.page-news .breadcrumbs__link:hover,
.page-news .breadcrumbs__link:focus-visible {
  color: var(--data-blue);
}

.page-news .breadcrumbs__current {
  color: var(--score-white);
}

.page-news .breadcrumbs__item + .breadcrumbs__item::before {
  content: "/";
  margin-right: 8px;
  color: var(--graphite);
}

/* 首屏 */
.page-news .news-hero {
  padding-block: 34px 58px;
  background: var(--night-green);
}

.page-news .news-hero__grid {
  display: grid;
  gap: 34px;
  align-items: end;
}

.page-news .news-hero__title {
  font-family: var(--font-heading);
  font-size: clamp(2.1rem, 5.4vw, 3.9rem);
  line-height: 1.02;
  letter-spacing: -.012em;
  margin: 14px 0 0;
  max-width: 20ch;
}

.page-news .news-hero__lede {
  margin: 18px 0 0;
  max-width: 54ch;
  color: rgba(242, 246, 244, .84);
}

.page-news .news-hero__stats {
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid var(--news-rule);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.page-news .news-hero__stats .stat__value {
  display: block;
  font-family: var(--font-mono);
  font-size: clamp(1.4rem, 3.4vw, 2rem);
  line-height: 1;
  letter-spacing: -.02em;
}

.page-news .news-hero__stats .stat__label {
  display: block;
  margin-top: 9px;
  font-size: 12px;
  letter-spacing: .06em;
  color: var(--graphite);
}

.page-news .news-hero__jump {
  margin: 28px 0 0;
}

.page-news .news-hero__figure {
  margin: 0;
}

.page-news .news-hero__figure img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 8;
  object-fit: cover;
}

/* 通用标题 */
.page-news .news-heading {
  font-family: var(--font-heading);
  font-size: clamp(1.7rem, 3.8vw, 2.6rem);
  line-height: 1.06;
  letter-spacing: -.01em;
  margin: 12px 0 0;
  max-width: 26ch;
}

.page-news .news-heading--ink {
  color: var(--ink);
}

.page-news .news-sub {
  margin: 14px 0 0;
  max-width: 52ch;
  color: var(--graphite);
  font-size: 15.5px;
}

/* 四类条目 */
.page-news .news-channels {
  background: var(--deep-green);
}

.page-news .channel-map {
  list-style: none;
  margin: 36px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  border-top: 1px solid var(--news-rule);
}

.page-news .channel {
  position: relative;
  padding: 26px 0 30px;
  border-bottom: 1px solid var(--news-rule);
}

.page-news .channel__num {
  display: inline-block;
  padding-bottom: 5px;
  font-size: 12px;
  letter-spacing: .1em;
  color: var(--data-blue);
  border-bottom: 1px solid rgba(45, 156, 255, .45);
}

.page-news .channel__name {
  margin: 14px 0 0;
  font-family: var(--font-heading);
  font-size: 1.34rem;
  line-height: 1.15;
  letter-spacing: -.005em;
}

.page-news .channel__desc {
  margin: 12px 0 0;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(242, 246, 244, .78);
  max-width: 34ch;
}

.page-news .channel__foot {
  margin: 16px 0 0;
  font-size: 12px;
  letter-spacing: .04em;
  color: var(--stoppage-orange);
}

/* 赛季脉络 */
.page-news .news-seasons {
  background: var(--night-green);
}

.page-news .news-timeline-layout {
  margin-top: 38px;
  display: grid;
  gap: 34px;
}

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

.page-news .news-timeline .timeline__item {
  position: relative;
  padding-left: 30px;
  padding-bottom: 32px;
}

.page-news .news-timeline .timeline__item::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 5px;
  width: 11px;
  height: 11px;
  background: var(--data-blue);
  transform: rotate(45deg);
}

.page-news .news-timeline .timeline__item::after {
  content: "";
  position: absolute;
  left: 9px;
  top: 20px;
  bottom: 4px;
  width: 1px;
  background: linear-gradient(to bottom, var(--data-blue), var(--stoppage-orange));
  opacity: .55;
}

.page-news .news-timeline .timeline__item:last-child::after {
  display: none;
}

.page-news .news-timeline .timeline__year {
  display: block;
  margin-bottom: 9px;
  font-family: var(--font-mono);
  font-size: 12.5px;
  letter-spacing: .1em;
  color: var(--stoppage-orange);
}

.page-news .news-timeline .timeline__title {
  margin: 0 0 9px;
  font-family: var(--font-heading);
  font-size: 1.22rem;
  line-height: 1.2;
}

.page-news .news-timeline .timeline__text {
  margin: 0;
  max-width: 46ch;
  font-size: 15px;
  line-height: 1.75;
  color: rgba(242, 246, 244, .78);
}

.page-news .news-timeline-figure {
  margin: 0;
}

.page-news .news-timeline-figure img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 10 / 7;
  object-fit: cover;
}

/* 条目列表 */
.page-news .section--paper {
  background: var(--archive-cream);
  color: var(--ink);
}

.page-news .news-filter {
  margin-top: 28px;
  padding-bottom: 18px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid var(--news-rule-ink);
}

.page-news .news-filter .filter-btn {
  padding: 8px 14px;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .06em;
  color: var(--ink);
  background: transparent;
  border: 1px solid rgba(6, 18, 14, .24);
  cursor: pointer;
  transition: background 160ms var(--ease), color 160ms var(--ease), border-color 160ms var(--ease);
}

.page-news .news-filter .filter-btn:hover {
  border-color: var(--data-blue-deep);
  color: var(--data-blue-deep);
}

.page-news .news-filter .filter-btn[aria-pressed="true"] {
  background: var(--ink);
  border-color: var(--ink);
  color: var(--archive-cream);
}

.page-news .news-filter .filter-btn[aria-pressed="true"]:hover {
  color: var(--archive-cream);
}

.page-news .news-filter .filter-btn:focus-visible {
  outline: 2px solid var(--stoppage-orange);
  outline-offset: 2px;
}

.page-news .news-filter .filter-count {
  margin: 0 0 0 auto;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .06em;
  color: rgba(6, 18, 14, .62);
}

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

.page-news .entry {
  position: relative;
  padding: 26px 0 24px;
  border-bottom: 1px solid var(--news-rule-ink);
}

.page-news .entry::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 56px;
  height: 2px;
  background: var(--data-blue-deep);
  transition: width 180ms var(--ease);
}

.page-news .entry:hover::before {
  width: 132px;
}

.page-news .entry__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.page-news .entry__round {
  font-size: 12px;
  letter-spacing: .1em;
  color: var(--data-blue-deep);
}

.page-news .entry .tag {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .08em;
  padding: 3px 8px;
  border: 1px solid currentColor;
}

.page-news .section--paper .tag--orange { color: #A94F08; }
.page-news .section--paper .tag--blue { color: #0F62B8; }
.page-news .section--paper .tag--purple { color: #5138C4; }
.page-news .section--paper .tag--muted { color: #40564E; }

.page-news .entry__title {
  margin: 12px 0 0;
  font-family: var(--font-heading);
  font-size: clamp(1.06rem, 2.1vw, 1.32rem);
  line-height: 1.26;
  color: var(--ink);
  max-width: 34ch;
}

.page-news .entry__excerpt {
  margin: 9px 0 0;
  padding-left: 2ch;
  text-indent: -2ch;
  max-width: 62ch;
  font-size: 15px;
  line-height: 1.74;
  color: rgba(6, 18, 14, .74);
}

.page-news .feed-tail {
  margin: 26px 0 0;
  font-size: 15px;
  color: rgba(6, 18, 14, .74);
}

.page-news .feed-tail a {
  color: var(--data-blue-deep);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* 第 31 轮专题 */
.page-news .news-round {
  position: relative;
  background: var(--ink);
  color: var(--score-white);
  overflow: hidden;
}

.page-news .news-round__inner {
  display: grid;
  gap: 26px;
}

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

.page-news .news-round__num {
  display: block;
  font-size: clamp(4.6rem, 15vw, 8.4rem);
  line-height: .84;
  letter-spacing: -.05em;
  color: var(--stoppage-orange);
}

.page-news .news-round__caption {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .14em;
  color: var(--graphite);
}

.page-news .news-round__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: clamp(1.7rem, 3.8vw, 2.5rem);
  line-height: 1.08;
  letter-spacing: -.01em;
  max-width: 24ch;
}

.page-news .news-round__lede {
  margin: 16px 0 0;
  max-width: 52ch;
  font-size: 15.5px;
  line-height: 1.72;
  color: rgba(242, 246, 244, .8);
}

.page-news .round-points {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  gap: 15px;
}

.page-news .round-points li {
  position: relative;
  padding-left: 24px;
  max-width: 58ch;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(242, 246, 244, .88);
}

.page-news .round-points li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .6em;
  width: 10px;
  height: 10px;
  background: var(--data-blue);
  transform: rotate(45deg);
}

.page-news .news-round__link {
  margin: 26px 0 0;
}

.page-news .news-round__figure {
  margin: 40px 0 0;
}

.page-news .news-round__figure img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 7 / 4;
  object-fit: cover;
}

/* 讨论与取用 */
.page-news .news-talk {
  background: var(--deep-green);
}

.page-news .talk-grid {
  margin-top: 32px;
  display: grid;
  gap: 18px;
}

.page-news .talk-card {
  position: relative;
  padding: 26px 22px 24px;
  background: rgba(6, 18, 14, .46);
  border: 1px solid var(--news-rule);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 22px), calc(100% - 22px) 100%, 0 100%);
}

.page-news .talk-card--purple { border-top: 2px solid var(--replay-purple); }
.page-news .talk-card--blue { border-top: 2px solid var(--data-blue); }
.page-news .talk-card--orange { border-top: 2px solid var(--stoppage-orange); }

.page-news .talk-card__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.22rem;
  line-height: 1.2;
}

.page-news .talk-card__text {
  margin: 12px 0 20px;
  font-size: 15px;
  line-height: 1.74;
  color: rgba(242, 246, 244, .8);
}

.page-news .news-talk__figure {
  margin: 32px 0 0;
}

.page-news .news-talk__figure img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 10 / 6;
  object-fit: cover;
}

/* 页尾 */
.page-news .news-foot {
  padding-block: 40px 56px;
  background: var(--night-green);
}

.page-news .news-foot p {
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(242, 246, 244, .7);
}

.page-news .news-foot a {
  color: var(--data-blue);
  text-decoration: none;
  border-bottom: 1px solid rgba(45, 156, 255, .5);
}

.page-news .news-foot a:hover,
.page-news .news-foot a:focus-visible {
  border-bottom-color: var(--data-blue);
}

/* 桌面端栅格 */
@media (min-width: 760px) {
  .page-news .channel-map {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .page-news .channel {
    padding: 30px 22px 34px;
    border-bottom: 0;
    border-top: 1px solid var(--news-rule);
  }

  .page-news .channel + .channel {
    border-left: 1px solid var(--news-rule);
  }

  .page-news .channel:nth-child(even) {
    padding-top: 58px;
  }
}

@media (min-width: 900px) {
  .page-news .news-hero {
    padding-block: 46px 68px;
  }

  .page-news .news-hero__grid {
    grid-template-columns: 62fr 38fr;
    gap: 52px;
  }

  .page-news .news-timeline-layout {
    grid-template-columns: 1.12fr .88fr;
    gap: 60px;
    align-items: start;
  }

  .page-news .news-round__inner {
    grid-template-columns: 210px minmax(0, 1fr);
    gap: 46px;
    align-items: start;
  }

  .page-news .talk-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-news .news-talk__figure {
    margin-top: 40px;
  }
}

@media (min-width: 1080px) {
  .page-news .entry-feed {
    column-count: 2;
    column-gap: 56px;
  }

  .page-news .entry {
    break-inside: avoid;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-news .entry::before,
  .page-news .news-filter .filter-btn {
    transition: none;
  }
}
<<<END>>>
