.page-news{
  --j-cut:16px;
  --j-rail:204px;
  --j-aside:236px;
  padding-bottom:64px;
  background-image:
    repeating-linear-gradient(90deg, var(--grid) 0 1px, transparent 1px 64px),
    repeating-linear-gradient(0deg, var(--grid) 0 1px, transparent 1px 64px);
}

/* ---------- 面包屑 ---------- */
.page-news .jnav{
  padding:22px 0 0;
}
.page-news .jnav__list{
  display:flex;
  flex-wrap:wrap;
  gap:0;
  align-items:center;
  margin:0;
  padding:0;
  list-style:none;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--steel);
}
.page-news .jnav__item{
  display:flex;
  align-items:center;
}
.page-news .jnav__item + .jnav__item::before{
  content:"/";
  margin:0 8px;
  color:var(--line-strong);
}
.page-news .jnav__item a{
  color:var(--steel);
  text-decoration:none;
  transition:color .16s var(--ease);
}
.page-news .jnav__item a:hover{
  color:var(--orange);
}
.page-news .jnav__item[aria-current="page"]{
  color:var(--mist);
}

/* ---------- 首屏 ---------- */
.page-news .jh{
  padding:26px 0 0;
}
.page-news .jh__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:22px;
}
.page-news .jh__kicker{
  margin:0 0 14px;
  color:var(--cyan);
}
.page-news .jh__title{
  margin:0;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(2.4rem, 8vw, 5.4rem);
  line-height:1.02;
  letter-spacing:-.02em;
  color:var(--mist);
}
.page-news .jh__facts{
  margin:0;
  padding:0;
  border-top:1px solid var(--line);
}
.page-news .jh__fact{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid var(--line);
}
.page-news .jh__fact dt{
  font-size:12px;
  letter-spacing:.08em;
  color:var(--steel);
}
.page-news .jh__fact dd{
  margin:0;
  font-family:var(--font-mono);
  font-weight:700;
  font-size:22px;
  font-variant-numeric:tabular-nums;
  color:var(--orange);
}
.page-news .jh__lede{
  margin:26px 0 0;
  max-width:70ch;
  font-size:15px;
  line-height:1.8;
  font-weight:300;
  color:rgba(232,237,245,.8);
}

/* ---------- 图片容器 ---------- */
.page-news .jfig{
  position:relative;
  margin:26px 0 0;
  border:1px solid var(--line);
  background:var(--ink-2);
  overflow:hidden;
  clip-path:polygon(0 0, calc(100% - var(--j-cut)) 0, 100% var(--j-cut), 100% 100%, 0 100%);
}
.page-news .jfig img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:cover;
  filter:saturate(.72) contrast(1.06);
}
.page-news .jfig figcaption{
  padding:12px 16px;
  border-top:1px solid var(--line);
  font-size:12.5px;
  line-height:1.7;
  color:var(--steel);
}
.page-news .jfig__mark{
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  padding:3px 8px;
  background:var(--orange);
  color:var(--ink);
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
}
.page-news .jfig__tag{
  position:absolute;
  top:12px;
  right:12px;
  z-index:2;
  padding:3px 8px;
  background:var(--cyan);
  color:var(--ink);
  font-size:11px;
  letter-spacing:.06em;
}
.page-news .jfig--data,
.page-news .jfig--cross,
.page-news .jfig--version{
  margin-top:22px;
}

/* ---------- 主体骨架 ---------- */
.page-news .jshell{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:0;
  padding:38px 0 0;
}
.page-news .jmain{
  min-width:0;
}

/* ---------- 左侧分类索引 ---------- */
.page-news .jrail{
  border-top:1px solid var(--line);
  padding:14px 0 4px;
}
.page-news .jrail__title{
  margin:0;
  color:var(--steel);
}
.page-news .jrail__list{
  display:flex;
  gap:8px;
  overflow-x:auto;
  margin:12px 0 0;
  padding:0 0 6px;
  list-style:none;
  scrollbar-width:thin;
}
.page-news .jrail__link{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-left:2px solid transparent;
  background:rgba(124,141,166,.06);
  color:var(--steel);
  font-size:13px;
  white-space:nowrap;
  text-decoration:none;
  transition:color .16s var(--ease), border-color .16s var(--ease), background-color .16s var(--ease);
}
.page-news .jrail__link:hover{
  color:var(--mist);
  border-left-color:var(--cyan);
  background:rgba(124,141,166,.14);
}
.page-news .jrail__link:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:2px;
}
.page-news .jrail__num{
  font-size:11px;
  color:var(--cyan);
  letter-spacing:.08em;
}
.page-news .jrail__count{
  font-size:11px;
  color:var(--steel);
}
.page-news .jrail__hint{
  margin:10px 0 0;
  font-size:12px;
  line-height:1.7;
  color:var(--steel);
}

/* ---------- 章节 ---------- */
.page-news .jsec{
  padding:0 0 52px;
}
.page-news .jsec + .jsec{
  padding-top:44px;
  border-top:1px solid var(--line);
}
.page-news .jsec__head{
  display:flex;
  align-items:baseline;
  gap:12px;
  margin-bottom:14px;
}
.page-news .jsec__idx{
  flex:none;
  padding:2px 7px;
  border:1px solid rgba(33,230,193,.42);
  background:rgba(33,230,193,.08);
  color:var(--cyan);
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.1em;
  clip-path:polygon(0 0, 100% 0, 100% calc(100% - 6px), calc(100% - 6px) 100%, 0 100%);
}
.page-news .jsec__title{
  margin:0;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(1.4rem, 2.6vw, 2.1rem);
  line-height:1.15;
  letter-spacing:-.01em;
  color:var(--mist);
}
.page-news .jsec__intro{
  margin:0;
  max-width:72ch;
  font-size:15px;
  line-height:1.8;
  font-weight:300;
  color:rgba(232,237,245,.78);
}
.page-news .jsec__intro a,
.page-news .jsec__outro a,
.page-news .jstream__note a{
  color:var(--orange);
  text-decoration:none;
  border-bottom:1px solid rgba(255,106,43,.4);
  transition:border-color .16s var(--ease);
}
.page-news .jsec__intro a:hover,
.page-news .jsec__outro a:hover,
.page-news .jstream__note a:hover{
  border-bottom-color:var(--orange);
}
.page-news .jsec__outro{
  margin:22px 0 0;
  max-width:72ch;
  font-size:14px;
  line-height:1.8;
  color:var(--steel);
}

/* ---------- 写入时点时间线 ---------- */
.page-news .jtimeline{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1px;
  margin:24px 0 0;
  padding:0;
  list-style:none;
  background:var(--line);
  border:1px solid var(--line);
}
.page-news .jtimeline__item{
  display:grid;
  gap:7px;
  align-content:start;
  padding:18px 16px;
  background:var(--ink-2);
}
.page-news .jtimeline__time{
  font-size:16px;
  font-weight:700;
  font-variant-numeric:tabular-nums;
  color:var(--orange);
}
.page-news .jtimeline__label{
  font-size:13px;
  font-weight:600;
  color:var(--mist);
}
.page-news .jtimeline__note{
  margin:0;
  font-size:12.5px;
  line-height:1.7;
  color:var(--steel);
}

/* ---------- 条目流 ---------- */
.page-news .jstream{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:26px;
  margin-top:26px;
}
.page-news .jstream__items{
  min-width:0;
}
.page-news .jentry{
  position:relative;
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:14px;
  padding:18px 0;
}
.page-news .jentry + .jentry::before{
  content:"";
  position:absolute;
  top:0;
  left:30px;
  right:0;
  height:1px;
  background-image:repeating-linear-gradient(135deg, var(--line-strong) 0 1px, transparent 1px 8px);
  opacity:.7;
}
.page-news .jentry__num{
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  color:var(--cyan);
  padding-top:3px;
}
.page-news .jentry__main{
  min-width:0;
}
.page-news .jentry__title{
  margin:0;
  font-family:var(--font-display);
  font-weight:700;
  font-size:16.5px;
  line-height:1.45;
  letter-spacing:-.005em;
  color:var(--mist);
}
.page-news .jentry__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin:9px 0 0;
}
.page-news .jentry__round,
.page-news .jentry__time{
  font-size:11.5px;
  letter-spacing:.06em;
  color:var(--steel);
}
.page-news .jentry__time::before{
  content:"·";
  margin-right:8px;
  color:var(--line-strong);
}
.page-news .jentry__more{
  margin-top:11px;
}
.page-news .jentry__more summary{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:3px 9px;
  border:1px solid var(--line);
  color:var(--steel);
  font-size:11px;
  letter-spacing:.08em;
  cursor:pointer;
  list-style:none;
  clip-path:polygon(0 0, 100% 0, 100% calc(100% - 6px), calc(100% - 6px) 100%, 0 100%);
  transition:color .16s var(--ease), border-color .16s var(--ease);
}
.page-news .jentry__more summary::-webkit-details-marker{
  display:none;
}
.page-news .jentry__more summary::before{
  content:"+";
  font-family:var(--font-mono);
  color:var(--cyan);
}
.page-news .jentry__more[open] summary::before{
  content:"–";
}
.page-news .jentry__more summary:hover{
  color:var(--mist);
  border-color:var(--orange);
}
.page-news .jentry__more summary:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:2px;
}
.page-news .jentry__more p{
  margin:11px 0 0;
  max-width:66ch;
  font-size:14px;
  line-height:1.8;
  font-weight:300;
  color:rgba(232,237,245,.76);
}
.page-news .jentry__more .jentry__ref{
  font-size:12px;
  color:var(--steel);
}
.page-news .jentry__ref a{
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(33,230,193,.42);
}
.page-news .jentry__ref a:hover{
  border-bottom-color:var(--cyan);
}

/* ---------- 条目流旁注列 ---------- */
.page-news .jstream__aside{
  display:grid;
  gap:14px;
  align-content:start;
}
.page-news .jstream__note{
  margin:0;
  font-size:12.5px;
  line-height:1.8;
  color:var(--steel);
}

/* ---------- 集锦筛选维度 ---------- */
.page-news .jfilter{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1px;
  margin:24px 0 0;
  background:var(--line);
  border:1px solid var(--line);
}
.page-news .jfilter__cell{
  padding:20px 18px;
  background:var(--ink-2);
}
.page-news .jfilter__dim{
  color:var(--cyan);
}
.page-news .jfilter__name{
  margin:9px 0 0;
  font-family:var(--font-display);
  font-weight:700;
  font-size:15.5px;
  color:var(--mist);
}
.page-news .jfilter__cell p{
  margin:9px 0 0;
  font-size:13.5px;
  line-height:1.8;
  font-weight:300;
  color:rgba(232,237,245,.74);
}

/* ---------- 跨联赛对照 ---------- */
.page-news .jcross{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1px;
  margin:24px 0 0;
  background:var(--line);
  border:1px solid var(--line);
}
.page-news .jcross__col{
  padding:22px 20px;
  background:var(--ink-2);
}
.page-news .jcross__badge{
  display:inline-block;
  margin:0;
  padding:2px 8px;
  background:rgba(124,141,166,.14);
  color:var(--mist);
  font-size:11px;
  letter-spacing:.08em;
}
.page-news .jcross__name{
  margin:13px 0 0;
  font-family:var(--font-display);
  font-weight:700;
  font-size:15.5px;
  line-height:1.5;
  color:var(--orange);
}
.page-news .jcross__col p{
  margin:11px 0 0;
  font-size:13.5px;
  line-height:1.8;
  font-weight:300;
  color:rgba(232,237,245,.74);
}

/* ---------- 版本条目 ---------- */
.page-news .jver{
  margin:24px 0 0;
  padding:0;
  list-style:none;
}
.page-news .jver__item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:14px;
  padding:18px 0;
  border-top:1px solid var(--line);
}
.page-news .jver__item:last-child{
  border-bottom:1px solid var(--line);
}
.page-news .jver__tag{
  align-self:start;
  padding:3px 9px;
  background:var(--cyan);
  color:var(--ink);
  font-family:var(--font-mono);
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
  clip-path:polygon(0 0, 100% 0, 100% calc(100% - 7px), calc(100% - 7px) 100%, 0 100%);
}
.page-news .jver__name{
  margin:0;
  font-family:var(--font-display);
  font-weight:700;
  font-size:15.5px;
  line-height:1.5;
  color:var(--mist);
}
.page-news .jver__item p{
  margin:9px 0 0;
  max-width:66ch;
  font-size:13.5px;
  line-height:1.8;
  font-weight:300;
  color:rgba(232,237,245,.74);
}

/* ---------- 来信汇总 ---------- */
.page-news .jmail{
  margin:24px 0 0;
  padding:0;
  list-style:none;
}
.page-news .jmail__item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "round count"
    "q count";
  align-items:center;
  gap:6px 16px;
  padding:16px 0;
  border-top:1px solid var(--line);
}
.page-news .jmail__item:last-child{
  border-bottom:1px solid var(--line);
}
.page-news .jmail__round{
  grid-area:round;
  color:var(--steel);
}
.page-news .jmail__q{
  grid-area:q;
  margin:0;
  font-size:15px;
  line-height:1.6;
  font-weight:400;
  color:var(--mist);
}
.page-news .jmail__n{
  grid-area:count;
  font-size:19px;
  font-weight:700;
  font-variant-numeric:tabular-nums;
  color:var(--orange);
}
.page-news .jinbox{
  display:grid;
  gap:16px;
  margin-top:26px;
  padding:22px 20px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(18,32,58,.9) 0%, rgba(10,18,32,.9) 100%);
  clip-path:polygon(0 0, calc(100% - var(--j-cut)) 0, 100% var(--j-cut), 100% 100%, 0 100%);
}
.page-news .jinbox__text{
  margin:0;
  max-width:66ch;
  font-size:14px;
  line-height:1.8;
  font-weight:300;
  color:rgba(232,237,245,.78);
}
.page-news .jinbox__cta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
}

/* ---------- 柔化共享折叠面板在本页的表现 ---------- */
.page-news .marginalia{
  font-size:12.5px;
  line-height:1.8;
}
.page-news .marginalia p{
  margin:10px 0 0;
  font-size:12.5px;
  line-height:1.8;
}

/* ---------- 响应式 ---------- */
@media (min-width:640px){
  .page-news .jtimeline{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  .page-news .jfilter{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}

@media (min-width:880px){
  .page-news .jh{
    padding-top:36px;
  }
  .page-news .jh__grid{
    grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);
    gap:38px;
    align-items:end;
  }
  .page-news .jcross{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}

@media (min-width:1000px){
  .page-news .jshell{
    grid-template-columns:var(--j-rail) minmax(0,1fr);
    gap:44px;
  }
  .page-news .jrail{
    position:sticky;
    top:96px;
    align-self:start;
    border-top:0;
    border-left:1px solid var(--line);
    padding:2px 0 0 16px;
    max-height:calc(100vh - 140px);
    overflow:auto;
  }
  .page-news .jrail__list{
    flex-direction:column;
    gap:2px;
    overflow:visible;
    padding-bottom:0;
  }
  .page-news .jrail__link{
    background:transparent;
    padding:7px 8px;
  }
}

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

@media (min-width:1180px){
  .page-news .jstream{
    grid-template-columns:minmax(0,1fr) var(--j-aside);
    gap:34px;
  }
  .page-news .jstream__aside{
    position:sticky;
    top:100px;
    border-left:1px solid var(--line);
    padding-left:18px;
  }
}

@media (min-width:1320px){
  .page-news .jsec__intro,
  .page-news .jh__lede{
    font-size:15.5px;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-news *{
    transition:none !important;
    animation:none !important;
  }
}
</main>
