/* ===== 更新观察 · page-news ===== */
.page-news{
  --news-gap: clamp(42px, 6vw, 92px);
  --news-radius: 14px;
  --news-card: linear-gradient(180deg, rgba(18,43,69,.92), rgba(13,34,56,.92));
  color: var(--ice);
  font-family: var(--font-body);
}

.page-news img{max-width:100%;height:auto;display:block}
.page-news h2,
.page-news h3{font-family:var(--font-display);margin:0}
.page-news p{margin:0}
.page-news ul,
.page-news ol{list-style:none;margin:0;padding:0}

/* ---------- 面包屑 ---------- */
.page-news .breadcrumb{margin:20px 0 0}
.page-news .breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;letter-spacing:.14em;color:var(--mist)}
.page-news .breadcrumb a{color:var(--mist);text-decoration:none;border-bottom:1px solid transparent;transition:color .2s var(--ease),border-color .2s var(--ease)}
.page-news .breadcrumb a:hover{color:var(--cyan);border-bottom-color:var(--cyan)}
.page-news .breadcrumb li+li::before{content:"/";margin-right:8px;color:var(--line)}
.page-news .breadcrumb li[aria-current]{color:var(--cyan)}

/* ---------- 首屏 ---------- */
.page-news .news-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:26px 0 clamp(30px,5vw,58px);
}
.page-news .news-hero::before{
  content:"";
  position:absolute;
  inset:-24% -14% auto -14%;
  height:86%;
  z-index:-1;
  transform:skewY(-5deg);
  background:
    radial-gradient(58% 86% at 14% 4%, rgba(140,91,255,.40), transparent 62%),
    radial-gradient(46% 76% at 86% 16%, rgba(53,242,208,.20), transparent 60%),
    linear-gradient(158deg, rgba(255,158,61,.18), transparent 56%);
}
.page-news .news-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.35;
  background-image:linear-gradient(rgba(53,242,208,.10) 1px, transparent 1px),
                   linear-gradient(90deg, rgba(53,242,208,.10) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.9), transparent 74%);
}
.page-news .hero-grid{display:grid;gap:26px;align-items:end}
.page-news .hero-eyebrow{
  font-size:12px;
  letter-spacing:.3em;
  color:var(--cyan);
  text-transform:uppercase;
  margin-bottom:14px;
}
.page-news .hero-title{
  font-size:clamp(36px,8vw,76px);
  font-weight:900;
  line-height:.98;
  letter-spacing:.01em;
  transform:skewX(-2.5deg);
  color:var(--ice);
  margin:0 0 18px;
}
.page-news .hero-title em{
  display:block;
  margin-top:16px;
  font-style:normal;
  font-size:clamp(16px,3.4vw,24px);
  font-weight:600;
  letter-spacing:.04em;
  transform:skewX(2.5deg);
  color:var(--mist);
}
.page-news .hero-lede{
  max-width:52ch;
  font-size:clamp(15px,2.4vw,17px);
  line-height:1.85;
  color:var(--mist);
}
.page-news .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.page-news .hero-side{
  position:relative;
  padding:20px;
  border:1px solid var(--line);
  border-radius:var(--news-radius);
  background:var(--news-card);
  box-shadow:0 18px 48px rgba(5,15,28,.45);
}
.page-news .hero-side::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:64px;
  height:4px;
  background:linear-gradient(90deg,var(--cyan),var(--orange));
}
.page-news .hero-stamp{
  font-size:11px;
  letter-spacing:.34em;
  color:var(--orange);
  margin-bottom:16px;
}
.page-news .hero-points{display:grid;gap:14px}
.page-news .hero-points li{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;font-size:14px}
.page-news .hero-points .dot{grid-row:span 2;align-self:start;margin-top:6px}
.page-news .hero-points b{font-weight:700;color:var(--ice);letter-spacing:.04em}
.page-news .hero-points i{font-style:normal;font-size:13px;color:var(--mist);line-height:1.5}

/* ---------- 页内跳转 ---------- */
.page-news .news-jump{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(13,34,56,.6)}
.page-news .news-jump ul{display:flex;gap:10px;overflow-x:auto;padding:12px 0;scrollbar-width:thin}
.page-news .news-jump a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
  padding:8px 14px;
  font-size:13px;
  color:var(--mist);
  text-decoration:none;
  border:1px solid var(--line);
  border-radius:999px;
  transition:color .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease);
}
.page-news .news-jump a span{font-size:11px;letter-spacing:.14em;color:var(--orange)}
.page-news .news-jump a:hover,
.page-news .news-jump a:focus-visible{color:var(--ice);border-color:var(--cyan);background:rgba(53,242,208,.10)}

/* ---------- 通用章节头 ---------- */
.page-news .section-head{max-width:64ch;margin-bottom:clamp(20px,3.4vw,32px)}
.page-news .section-kicker{
  font-size:11px;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:var(--orange);
  margin-bottom:10px;
}
.page-news .section-title{
  font-size:clamp(24px,4.6vw,38px);
  font-weight:800;
  letter-spacing:.01em;
  transform:skewX(-2deg);
  color:var(--ice);
  margin-bottom:12px;
}
.page-news .section-note{font-size:15px;line-height:1.8;color:var(--mist)}

/* ---------- 脉冲 ---------- */
.page-news .pulse{padding:var(--news-gap) 0 0}
.page-news .pulse-media{
  margin-bottom:22px;
  border-radius:var(--news-radius);
  overflow:hidden;
  border:1px solid var(--line);
}
.page-news .pulse-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
.page-news .pulse-card{
  position:relative;
  padding:16px 14px 18px;
  background:var(--news-card);
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
}
.page-news .pulse-card::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:3px;
  background:linear-gradient(90deg,var(--cyan),var(--violet));
}
.page-news .pulse-card.is-orange::after{background:linear-gradient(90deg,var(--orange),var(--coral))}
.page-news .pulse-num{
  display:block;
  font-family:var(--font-display);
  font-size:clamp(28px,6.4vw,42px);
  font-weight:900;
  line-height:1;
  color:var(--ice);
  letter-spacing:-.02em;
}
.page-news .pulse-num small{font-size:14px;font-weight:700;color:var(--cyan);margin-left:2px}
.page-news .pulse-label{margin-top:10px;font-size:13px;line-height:1.6;color:var(--mist)}
.page-news .pulse-state{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:12px;
  font-size:11px;
  letter-spacing:.14em;
  color:var(--cyan);
}
.page-news .pulse-card.is-orange .pulse-state{color:var(--orange)}

/* ---------- 动态索引 ---------- */
.page-news .feed-section{padding:var(--news-gap) 0 0}
.page-news .feed-shell{position:relative}
.page-news .f-radio{
  position:absolute;
  width:1px;height:1px;
  opacity:0;
  pointer-events:none;
}
.page-news .filter-bar{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:14px;
  margin-bottom:20px;
  background:var(--news-card);
  border:1px solid var(--line);
  border-radius:12px;
}
.page-news .chip-set{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.page-news .chip-set-label{
  font-size:11px;
  letter-spacing:.24em;
  color:var(--mist);
  margin-right:2px;
}
.page-news .chip{
  display:inline-flex;
  align-items:center;
  cursor:pointer;
  padding:6px 12px;
  font-size:13px;
  color:var(--mist);
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.02);
  transition:color .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease),transform .18s var(--ease);
}
.page-news .chip b{font-size:11px;font-weight:700;margin-left:5px;opacity:.8}
.page-news .chip:hover{color:var(--ice);border-color:var(--cyan);transform:translateY(-1px)}

.page-news #line-all:checked ~ .filter-bar label[for="line-all"],
.page-news #line-hot:checked ~ .filter-bar label[for="line-hot"],
.page-news #line-light:checked ~ .filter-bar label[for="line-light"],
.page-news #line-video:checked ~ .filter-bar label[for="line-video"],
.page-news #line-creator:checked ~ .filter-bar label[for="line-creator"],
.page-news #line-event:checked ~ .filter-bar label[for="line-event"],
.page-news #line-fav:checked ~ .filter-bar label[for="line-fav"],
.page-news #time-all:checked ~ .filter-bar label[for="time-all"],
.page-news #time-week:checked ~ .filter-bar label[for="time-week"],
.page-news #time-last:checked ~ .filter-bar label[for="time-last"],
.page-news #time-month:checked ~ .filter-bar label[for="time-month"]{
  color:var(--ink);
  background:var(--cyan);
  border-color:var(--cyan);
  box-shadow:0 0 0 1px rgba(53,242,208,.4);
}

.page-news #line-all:focus-visible ~ .filter-bar label[for="line-all"],
.page-news #line-hot:focus-visible ~ .filter-bar label[for="line-hot"],
.page-news #line-light:focus-visible ~ .filter-bar label[for="line-light"],
.page-news #line-video:focus-visible ~ .filter-bar label[for="line-video"],
.page-news #line-creator:focus-visible ~ .filter-bar label[for="line-creator"],
.page-news #line-event:focus-visible ~ .filter-bar label[for="line-event"],
.page-news #line-fav:focus-visible ~ .filter-bar label[for="line-fav"],
.page-news #time-all:focus-visible ~ .filter-bar label[for="time-all"],
.page-news #time-week:focus-visible ~ .filter-bar label[for="time-week"],
.page-news #time-last:focus-visible ~ .filter-bar label[for="time-last"],
.page-news #time-month:focus-visible ~ .filter-bar label[for="time-month"]{
  outline:2px solid var(--ice);
  outline-offset:2px;
}

.page-news .feed-body{display:grid;gap:22px}

.page-news .feed{position:relative;display:grid;gap:12px}
.page-news .feed-item{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  padding:14px 14px 16px;
  background:var(--news-card);
  border:1px solid var(--line);
  border-left:3px solid var(--line);
  border-radius:12px;
  transition:border-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease);
}
.page-news .feed-item:hover{transform:translateX(2px);box-shadow:0 12px 30px rgba(5,15,28,.45)}
.page-news .feed-item.l-hot,
.page-news .feed-item.l-creator{border-left-color:var(--cyan)}
.page-news .feed-item.l-event,
.page-news .feed-item.l-light{border-left-color:var(--orange)}
.page-news .feed-item.l-video,
.page-news .feed-item.l-fav{border-left-color:var(--violet)}
.page-news .feed-time{
  font-size:11px;
  letter-spacing:.2em;
  color:var(--orange);
}
.page-news .feed-tag{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.page-news .feed-title{
  font-size:clamp(16px,2.8vw,19px);
  font-weight:700;
  line-height:1.45;
  color:var(--ice);
  margin-bottom:8px;
}
.page-news .feed-sum{font-size:14px;line-height:1.8;color:var(--mist)}
.page-news .feed-more{margin-top:10px}
.page-news .feed-more summary{
  display:inline-flex;
  align-items:center;
  gap:6px;
  cursor:pointer;
  list-style:none;
  font-size:12px;
  letter-spacing:.12em;
  color:var(--cyan);
}
.page-news .feed-more summary::-webkit-details-marker{display:none}
.page-news .feed-more summary::before{content:"+";font-size:14px;line-height:1}
.page-news .feed-more[open] summary::before{content:"–"}
.page-news .feed-more summary:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.page-news .feed-more p{
  margin-top:8px;
  padding-left:12px;
  border-left:2px solid var(--line);
  font-size:13px;
  line-height:1.75;
  color:var(--mist);
}

.page-news .feed-aside{
  display:grid;
  gap:14px;
  align-content:start;
}
.page-news .feed-aside .media{border-radius:var(--news-radius);overflow:hidden;border:1px solid var(--line)}
.page-news .aside-note{font-size:13px;line-height:1.8;color:var(--mist)}
.page-news .aside-list{display:grid;gap:8px;border-top:1px dashed var(--line);padding-top:14px}
.page-news .aside-list li{
  display:flex;
  gap:10px;
  align-items:baseline;
  font-size:13px;
  color:var(--mist);
}
.page-news .aside-list span{
  font-family:var(--font-display);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--orange);
}

.page-news .feed-empty{
  display:none;
  margin-top:16px;
  padding:18px;
  text-align:center;
  font-size:14px;
  line-height:1.8;
  color:var(--mist);
  border:1px dashed var(--line);
  border-radius:12px;
  background:rgba(13,34,56,.6);
}

.page-news .feed-shell:has(#line-hot:checked) .feed-item:not(.l-hot),
.page-news .feed-shell:has(#line-light:checked) .feed-item:not(.l-light),
.page-news .feed-shell:has(#line-video:checked) .feed-item:not(.l-video),
.page-news .feed-shell:has(#line-creator:checked) .feed-item:not(.l-creator),
.page-news .feed-shell:has(#line-event:checked) .feed-item:not(.l-event),
.page-news .feed-shell:has(#line-fav:checked) .feed-item:not(.l-fav),
.page-news .feed-shell:has(#time-week:checked) .feed-item:not(.t-week),
.page-news .feed-shell:has(#time-last:checked) .feed-item:not(.t-last),
.page-news .feed-shell:has(#time-month:checked) .feed-item:not(.t-month){display:none}

.page-news .feed-shell:has(#line-hot:checked):has(#time-last:checked) .feed-empty,
.page-news .feed-shell:has(#line-hot:checked):has(#time-month:checked) .feed-empty,
.page-news .feed-shell:has(#line-light:checked):has(#time-week:checked) .feed-empty,
.page-news .feed-shell:has(#line-light:checked):has(#time-month:checked) .feed-empty,
.page-news .feed-shell:has(#line-video:checked):has(#time-last:checked) .feed-empty,
.page-news .feed-shell:has(#line-creator:checked):has(#time-last:checked) .feed-empty,
.page-news .feed-shell:has(#line-event:checked):has(#time-week:checked) .feed-empty,
.page-news .feed-shell:has(#line-fav:checked):has(#time-last:checked) .feed-empty{display:block}

/* ---------- 中段分隔 ---------- */
.page-news .news-strip{padding:var(--news-gap) 0 0}
.page-news .news-strip .media{
  border-radius:var(--news-radius);
  overflow:hidden;
  border:1px solid var(--line);
}
.page-news .strip-note{
  margin-top:14px;
  padding-left:16px;
  border-left:3px solid var(--orange);
  font-size:14px;
  line-height:1.8;
  color:var(--mist);
  max-width:60ch;
}

/* ---------- 专题观察 ---------- */
.page-news .observation{padding:var(--news-gap) 0 0}
.page-news .obs-index{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  font-size:12px;
  letter-spacing:.1em;
  color:var(--mist);
  margin-bottom:20px;
}
.page-news .obs-index a{
  color:var(--cyan);
  text-decoration:none;
  padding:5px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease);
}
.page-news .obs-index a:hover{background:rgba(53,242,208,.12);border-color:var(--cyan);color:var(--ice)}

.page-news .obs-grid{display:grid;gap:14px}
.page-news .obs-card{
  position:relative;
  padding:20px 18px 22px;
  background:var(--news-card);
  border:1px solid var(--line);
  border-radius:var(--news-radius);
  scroll-margin-top:90px;
  transition:border-color .3s var(--ease),box-shadow .3s var(--ease),transform .3s var(--ease);
}
.page-news .obs-card:target{
  border-color:var(--cyan);
  box-shadow:0 0 0 1px var(--cyan),0 18px 44px rgba(53,242,208,.14);
  transform:translateY(-2px);
}
.page-news .obs-no{
  font-family:var(--font-display);
  font-size:34px;
  font-weight:900;
  line-height:1;
  color:transparent;
  -webkit-text-stroke:1px rgba(53,242,208,.65);
  margin-bottom:12px;
}
.page-news .obs-kicker{
  font-size:11px;
  letter-spacing:.24em;
  color:var(--orange);
  margin-bottom:8px;
}
.page-news .obs-title{
  font-size:clamp(18px,3vw,22px);
  font-weight:800;
  line-height:1.4;
  color:var(--ice);
  margin-bottom:12px;
}
.page-news .obs-text{font-size:14px;line-height:1.85;color:var(--mist)}
.page-news .obs-impact{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin-top:16px;
  padding-top:14px;
  border-top:1px dashed var(--line);
  font-size:12px;
  line-height:1.7;
  color:var(--cyan);
}
.page-news .obs-impact .dot{margin-top:5px}

.page-news .obs-media{
  margin-top:24px;
  border-radius:var(--news-radius);
  overflow:hidden;
  border:1px solid var(--line);
}

/* ---------- 节奏 ---------- */
.page-news .rhythm-section{padding:var(--news-gap) 0 0}
.page-news .rhythm-grid{display:grid;gap:26px}
.page-news .rhythm{
  position:relative;
  margin-left:6px;
  padding-left:24px;
  border-left:1px solid var(--line);
  display:grid;
  gap:24px;
}
.page-news .rhythm-item{position:relative}
.page-news .rhythm-item::before{
  content:"";
  position:absolute;
  left:-30px;
  top:5px;
  width:11px;
  height:11px;
  border-radius:50%;
  background:var(--ink);
  border:2px solid var(--cyan);
  box-shadow:0 0 0 4px rgba(53,242,208,.10);
}
.page-news .rhythm-item:nth-child(even)::before{border-color:var(--orange);box-shadow:0 0 0 4px rgba(255,158,61,.10)}
.page-news .rhythm-item h3{
  font-size:17px;
  font-weight:800;
  color:var(--ice);
  margin-bottom:8px;
  letter-spacing:.02em;
}
.page-news .rhythm-item p{font-size:14px;line-height:1.8;color:var(--mist);max-width:56ch}

.page-news .rhythm-side{padding:20px 18px;border-radius:var(--news-radius);align-self:start}
.page-news .rhythm-side-label{
  font-size:11px;
  letter-spacing:.24em;
  color:var(--cyan);
  margin-bottom:16px;
}
.page-news .rhythm-side-list{display:grid;gap:14px}
.page-news .rhythm-side-list li{display:grid;gap:6px;font-size:13px;line-height:1.7;color:var(--mist)}
.page-news .rhythm-side-list .tag{justify-self:start}
.page-news .rhythm-side-foot{
  margin-top:16px;
  padding-top:14px;
  border-top:1px dashed var(--line);
  font-size:13px;
  line-height:1.7;
  color:var(--mist);
}

/* ---------- 下一步 ---------- */
.page-news .reach{padding:var(--news-gap) 0 clamp(48px,7vw,90px)}
.page-news .reach-grid{display:grid;gap:12px}
.page-news .reach-card{
  display:block;
  padding:20px 18px;
  text-decoration:none;
  background:var(--news-card);
  border:1px solid var(--line);
  border-radius:var(--news-radius);
  transition:border-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease);
}
.page-news .reach-card:hover,
.page-news .reach-card:focus-visible{
  border-color:var(--cyan);
  transform:translateY(-3px);
  box-shadow:0 16px 40px rgba(5,15,28,.5);
}
.page-news .reach-no{
  font-family:var(--font-display);
  font-size:11px;
  letter-spacing:.24em;
  color:var(--orange);
  margin-bottom:10px;
}
.page-news .reach-card h3{
  font-size:17px;
  font-weight:800;
  line-height:1.45;
  color:var(--ice);
  margin-bottom:8px;
}
.page-news .reach-card p:not(.reach-no){font-size:13px;line-height:1.75;color:var(--mist)}
.page-news .reach-go{
  display:inline-block;
  margin-top:14px;
  font-size:12px;
  letter-spacing:.1em;
  color:var(--cyan);
}

.page-news .reach-contact{
  margin-top:24px;
  padding:20px 18px;
  border:1px dashed var(--line);
  border-radius:var(--news-radius);
  background:rgba(13,34,56,.55);
  display:grid;
  gap:12px;
}
.page-news .rc-item{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline}
.page-news .rc-label{font-size:11px;letter-spacing:.22em;color:var(--mist)}
.page-news .rc-value{
  font-family:var(--font-display);
  font-size:15px;
  font-weight:700;
  color:var(--ice);
  letter-spacing:.02em;
}
.page-news .rc-note{font-size:12px;line-height:1.8;color:var(--mist)}

/* ---------- 平板 ---------- */
@media (min-width:720px){
  .page-news .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.82fr)}
  .page-news .pulse-grid{gap:16px}
  .page-news .feed-item{grid-template-columns:84px minmax(0,1fr);gap:14px;align-items:start}
  .page-news .feed-time{padding-top:4px;text-align:left}
  .page-news .obs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-news .reach-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-news .rhythm-grid{grid-template-columns:minmax(0,1fr) minmax(0,.7fr)}
}

/* ---------- 桌面 ---------- */
@media (min-width:1000px){
  .page-news .news-hero{padding-top:34px;padding-bottom:clamp(52px,6vw,84px)}
  .page-news .hero-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:44px}
  .page-news .hero-side{padding:26px 24px}
  .page-news .hero-stamp{
    position:absolute;
    top:20px;
    right:-2px;
    writing-mode:vertical-rl;
    letter-spacing:.4em;
    margin:0;
  }
  .page-news .pulse-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .page-news .feed-body{grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:start}
  .page-news .feed-aside{position:sticky;top:84px}
  .page-news .obs-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .page-news .obs-card:nth-child(2){margin-top:36px}
  .page-news .obs-card:nth-child(3){margin-top:14px}
  .page-news .reach-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media (prefers-reduced-motion:reduce){
  .page-news .feed-item,
  .page-news .reach-card,
  .page-news .obs-card,
  .page-news .chip,
  .page-news .news-jump a{transition:none}
  .page-news .feed-item:hover,
  .page-news .reach-card:hover,
  .page-news .obs-card:target{transform:none}
}
<<<END>>>
