.page-news{
  --news-pad:clamp(52px,9vw,108px);
  --news-gap:clamp(20px,4vw,40px);
  --news-local-line:rgba(56,225,207,.22);
  background:var(--ink-900);
  color:var(--paper);
  font-family:var(--font-body);
  overflow-x:clip;
}

.page-news img{
  display:block;
  max-width:100%;
  height:auto;
}

.page-news .media__mask img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* ---------- 首屏 ---------- */

.page-news .topics-hero{
  padding:clamp(24px,5vw,52px) 0 var(--news-pad);
  background:linear-gradient(180deg,var(--ink-800) 0%,var(--ink-900) 100%);
  border-bottom:1px solid var(--line);
}

.page-news .hero-grid{
  display:grid;
  gap:clamp(30px,6vw,56px);
  margin-top:clamp(28px,6vw,64px);
  align-items:end;
}

.page-news .hero-title{
  font-family:var(--font-display);
  font-weight:200;
  font-size:clamp(3rem,13vw,7rem);
  line-height:.9;
  letter-spacing:-.02em;
  margin:.12em 0 .22em;
  color:var(--paper);
}

.page-news .hero-lede{
  max-width:46ch;
  font-size:1.0625rem;
  line-height:1.85;
  color:var(--paper);
  margin:0;
}

.page-news .hero-side{
  display:grid;
  gap:clamp(20px,4vw,32px);
}

.page-news .stage-track{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}

.page-news .stage-track__item{
  font-family:var(--font-heading);
  font-size:.8125rem;
  letter-spacing:.18em;
  padding:7px 16px;
  border:1px solid var(--line);
  color:var(--muted);
  background:rgba(10,30,25,.6);
}

.page-news .stage-track__item--now{
  border-color:var(--amber);
  background:var(--amber);
  color:var(--night);
  font-weight:600;
}

.page-news .topic-index{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px 24px;
  border-top:1px solid var(--line);
  padding-top:18px;
}

.page-news .topic-index .index-link{
  font-family:var(--font-heading);
  font-size:.875rem;
  padding:6px 0;
}

/* ---------- 通用章节 ---------- */

.page-news .topic-section{
  padding:var(--news-pad) 0;
  border-bottom:1px solid var(--line);
}

.page-news .topic-section--alt{
  background:var(--ink-800);
}

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

/* ---------- 本期专题 ---------- */

.page-news .feature-grid{
  display:grid;
  gap:var(--news-gap);
  margin-top:clamp(28px,5vw,52px);
}

.page-news .feature-cover{
  margin:0;
  border:1px solid var(--line);
}

.page-news .feature-index{
  display:block;
  font-family:var(--font-display);
  font-weight:200;
  font-size:clamp(3.4rem,11vw,5.6rem);
  line-height:.9;
  letter-spacing:-.03em;
  color:var(--cyan);
}

.page-news .feature-kicker{
  font-family:var(--font-heading);
  font-size:.8125rem;
  letter-spacing:.18em;
  color:var(--amber);
  margin:10px 0 14px;
}

.page-news .feature-text{
  font-size:1.0625rem;
  line-height:1.85;
  margin:0;
  color:var(--paper);
}

.page-news .focus-list{
  list-style:none;
  margin:24px 0 0;
  padding:0;
  display:grid;
  gap:14px;
}

.page-news .focus-list li{
  position:relative;
  padding-left:22px;
  font-size:1rem;
  line-height:1.8;
  color:var(--paper);
}

.page-news .focus-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.85em;
  width:12px;
  height:1px;
  background:var(--amber);
}

.page-news .feature-note{
  margin:26px 0 0;
  padding-top:18px;
  border-top:1px solid var(--line);
  font-family:var(--font-heading);
  font-size:.9375rem;
  line-height:1.8;
  color:var(--cyan-soft);
}

/* ---------- 战报时间轴 ---------- */

.page-news .feed-list{
  position:relative;
  list-style:none;
  margin:clamp(30px,5vw,56px) 0 0;
  padding:0 0 0 28px;
}

.page-news .feed-list::before{
  content:"";
  position:absolute;
  left:7px;
  top:10px;
  bottom:10px;
  width:1px;
  background:linear-gradient(180deg,var(--cyan) 0%,var(--news-local-line) 60%,rgba(56,225,207,.05) 100%);
}

.page-news .feed-item{
  position:relative;
  padding-bottom:clamp(28px,4vw,44px);
}

.page-news .feed-item:last-child{
  padding-bottom:0;
}

.page-news .feed-item::before{
  content:"";
  position:absolute;
  left:-25px;
  top:9px;
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--ink-900);
  border:1px solid var(--cyan);
}

.page-news .topic-section--alt .feed-item::before{
  background:var(--ink-800);
}

.page-news .feed-item--media::before{
  border-color:var(--amber);
}

.page-news .feed-item__inner{
  display:grid;
  gap:10px;
}

.page-news .feed-item__tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-content:start;
}

.page-news .feed-item__title{
  font-family:var(--font-heading);
  font-weight:600;
  font-size:clamp(1.15rem,2.4vw,1.45rem);
  line-height:1.45;
  margin:0;
  color:var(--paper);
}

.page-news .feed-item__time{
  font-family:var(--font-data);
  font-size:.8125rem;
  letter-spacing:.06em;
  color:var(--cyan-soft);
  margin:6px 0 0;
}

.page-news .feed-item__lede{
  margin:8px 0 0;
  font-size:1rem;
  line-height:1.8;
  color:var(--paper);
  max-width:60ch;
}

.page-news .feed-item__more{
  margin-top:12px;
  border-top:1px solid var(--line);
  padding-top:10px;
}

.page-news .feed-item__more summary{
  cursor:pointer;
  list-style:none;
  font-family:var(--font-heading);
  font-size:.8125rem;
  letter-spacing:.16em;
  color:var(--cyan);
}

.page-news .feed-item__more summary::-webkit-details-marker{
  display:none;
}

.page-news .feed-item__more summary::before{
  content:"＋ ";
}

.page-news .feed-item__more[open] summary::before{
  content:"－ ";
}

.page-news .feed-item__more summary:focus-visible{
  outline:2px solid var(--cyan-soft);
  outline-offset:3px;
}

.page-news .feed-item__more p{
  margin:12px 0 0;
  font-size:.9375rem;
  line-height:1.8;
  color:var(--muted);
  max-width:60ch;
}

.page-news .feed-item--media .media{
  margin:0;
  max-width:640px;
}

/* ---------- 标签分类 ---------- */

.page-news .tag-grid{
  display:grid;
  gap:clamp(22px,4vw,32px);
  margin-top:clamp(30px,5vw,52px);
}

.page-news .tag-col{
  border-top:1px solid var(--line);
  padding-top:18px;
}

.page-news .tag-col__title{
  font-family:var(--font-heading);
  font-weight:600;
  font-size:1.0625rem;
  line-height:1.5;
  margin:14px 0 8px;
  color:var(--paper);
}

.page-news .tag-col__text{
  margin:0;
  font-size:.9375rem;
  line-height:1.8;
  color:var(--muted);
}

/* ---------- 更新节奏 ---------- */

.page-news .cadence-grid{
  display:grid;
  gap:clamp(24px,4vw,34px);
  margin-top:clamp(30px,5vw,52px);
}

.page-news .cadence-card{
  border-top:1px solid var(--cyan);
  padding-top:18px;
}

.page-news .cadence-card__num{
  font-family:var(--font-display);
  font-weight:200;
  font-size:clamp(2.6rem,8vw,3.6rem);
  line-height:1;
  color:var(--amber);
  letter-spacing:-.02em;
}

.page-news .cadence-card__unit{
  display:inline-block;
  margin-left:10px;
  font-family:var(--font-heading);
  font-size:.8125rem;
  letter-spacing:.18em;
  color:var(--muted);
}

.page-news .cadence-card__text{
  margin:12px 0 0;
  font-size:.9375rem;
  line-height:1.8;
  color:var(--paper);
}

/* ---------- 怎么读 ---------- */

.page-news .readthrough{
  display:grid;
  gap:clamp(28px,5vw,48px);
  margin-top:clamp(30px,5vw,52px);
  align-items:start;
}

.page-news .readthrough__media{
  margin:0;
  border:1px solid var(--line);
  max-width:520px;
}

.page-news .step-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:clamp(22px,3.5vw,32px);
}

.page-news .step-item{
  display:grid;
  gap:6px;
  border-left:1px solid var(--line);
  padding-left:20px;
}

.page-news .step-item__num{
  font-family:var(--font-data);
  font-size:.8125rem;
  letter-spacing:.18em;
  color:var(--amber);
}

.page-news .step-item__title{
  font-family:var(--font-heading);
  font-weight:600;
  font-size:1.25rem;
  line-height:1.45;
  margin:0;
  color:var(--paper);
}

.page-news .step-item__text{
  margin:0;
  font-size:1rem;
  line-height:1.85;
  color:var(--muted);
  max-width:58ch;
}

/* ---------- 往期专题 ---------- */

.page-news .archive-list{
  list-style:none;
  margin:clamp(30px,5vw,52px) 0 0;
  padding:0;
  border-top:1px solid var(--line);
}

.page-news .archive-item{
  display:grid;
  gap:6px;
  padding:20px 0;
  border-bottom:1px solid var(--line);
}

.page-news .archive-item__stage{
  font-family:var(--font-data);
  font-size:.8125rem;
  letter-spacing:.08em;
  color:var(--cyan-soft);
}

.page-news .archive-item__title{
  font-family:var(--font-heading);
  font-weight:600;
  font-size:1.0625rem;
  line-height:1.5;
  margin:0;
  color:var(--paper);
}

.page-news .archive-item__tag{
  justify-self:start;
  font-family:var(--font-heading);
  font-size:.75rem;
  letter-spacing:.16em;
  color:var(--muted);
  border:1px solid var(--line);
  padding:4px 10px;
}

.page-news .archive-item--now{
  background:linear-gradient(90deg,rgba(255,182,60,.09) 0%,rgba(255,182,60,0) 70%);
}

.page-news .archive-item--now .archive-item__tag{
  color:var(--amber);
  border-color:var(--amber-deep);
}

.page-news .archive-figure{
  margin:clamp(30px,5vw,48px) 0 0;
  border:1px solid var(--line);
}

.page-news .topic-cta{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:clamp(28px,4vw,44px);
}

/* ---------- 响应式 ---------- */

@media (min-width:700px){
  .page-news .tag-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

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

  .page-news .archive-item{
    grid-template-columns:minmax(0,180px) minmax(0,1fr) auto;
    align-items:baseline;
    gap:20px;
  }

  .page-news .archive-item__tag{
    justify-self:end;
  }
}

@media (min-width:900px){
  .page-news .hero-grid{
    grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);
  }

  .page-news .topic-index{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .page-news .feature-grid{
    grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);
    align-items:start;
  }

  .page-news .feed-item__inner{
    grid-template-columns:150px minmax(0,1fr);
    gap:clamp(20px,3vw,36px);
  }

  .page-news .feed-item__tags{
    flex-direction:column;
    align-items:flex-start;
  }

  .page-news .readthrough{
    grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);
  }
}

@media (min-width:1080px){
  .page-news .tag-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

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

@media (prefers-reduced-motion:reduce){
  .page-news .feed-list::before{
    background:var(--cyan);
  }
}
