/* Scoped editorial styles. Existing language editions and activity cards are unchanged. */
.news-teaser { background:var(--mist); border-bottom:1px solid var(--line); }
.news-teaser-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:64px; align-items:start; }
.news-teaser h2 em { color:var(--blue); }
.news-teaser-intro { max-width:540px; margin-top:24px; }
.news-teaser-panel { border-top:3px solid var(--navy); padding-top:24px; }
.news-teaser-date { font:1.55rem/1.3 var(--serif); color:var(--navy); margin:12px 0; }
.news-teaser-panel .button { margin:24px 0 16px; }
.news-teaser-meta { font-size:.875rem; }
.news-hero { background:var(--deep); color:var(--white); padding:34px 0 56px; }
.news-breadcrumb { font-size:.875rem; color:var(--pale); margin-bottom:42px; }
.news-kicker { color:var(--pale); font-size:.75rem; letter-spacing:.14em; text-transform:uppercase; margin-bottom:22px; }
.news-hero h1 { color:var(--white); font-size:clamp(2.6rem,5vw,4.5rem); line-height:1.05; letter-spacing:-.035em; max-width:900px; }
.news-hero h1 em { color:var(--pale); }
.news-intro { max-width:780px; font-size:1.2rem; line-height:1.6; margin:28px 0; }
.news-edition { display:flex; gap:8px 32px; flex-wrap:wrap; border-top:1px solid #526078; padding-top:22px; font-size:.9rem; }
.news-cadence { font-size:.875rem; color:var(--pale); margin-top:8px; }
.news-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:64px; padding-block:64px 90px; }
.news-index { align-self:start; }
.news-index nav { display:grid; margin:18px 0; border-top:1px solid var(--line); }
.news-index nav a { padding:16px 0; min-height:48px; border-bottom:1px solid var(--line); text-decoration:none; font-size:.95rem; color:var(--navy); }
.news-index nav a:hover { text-decoration:underline; }
.news-index nav span { font-size:.75rem; margin-right:10px; color:var(--blue); }
.news-index-note { font-size:.875rem; margin:24px 0; }
.news-index .text-link { font-size:.875rem; }
.news-region { margin-bottom:64px; }
.news-region > h2 { margin-bottom:28px; font-size:clamp(2rem,3.5vw,2.8rem); }
.news-region-note { padding:20px 24px; border-left:3px solid var(--blue); background:var(--mist); margin-bottom:24px; }
.news-item { border-top:1px solid var(--line); padding:28px 0; }
.news-item:last-child { border-bottom:1px solid var(--line); }
.news-date { color:var(--blue); font-size:.8rem; margin-bottom:10px; }
.news-item h3 { font-size:clamp(1.5rem,2.6vw,1.95rem); line-height:1.25; letter-spacing:-.02em; margin-bottom:18px; }
.news-item-copy > p + p { margin-top:16px; }
.news-relevance { font-size:.98rem; }
.news-relevance strong { color:var(--navy); }
.news-caveat { font-size:.9rem; border-left:2px solid var(--gold); padding-left:16px; }
.news-sources { list-style:none; padding:0; margin:22px 0 0; font-size:.8rem; line-height:1.7; overflow-wrap:anywhere; }
.news-sources li + li { margin-top:10px; }
.news-sources a { color:var(--blue); }
.news-method { background:var(--mist); padding:28px; margin-bottom:48px; font-size:.94rem; }
.news-method h2,.news-archive h2 { font-size:1.7rem; margin:12px 0 18px; }
.news-method p + p { margin-top:16px; }
.news-archive ul { list-style:none; margin:0; padding:0; }
.news-archive li { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; border-bottom:1px solid var(--line); padding:16px 0; font-size:.9rem; }
.news-archive li span { font-size:.8rem; }
.news-hero a:focus-visible { outline-color:var(--pale); }
@media(max-width:900px) { .news-layout { grid-template-columns:1fr; gap:40px; } .news-index nav { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; } .news-index-note { margin:14px 0; } .news-teaser-grid { gap:32px; } }
@media(max-width:600px) { .news-teaser-grid { grid-template-columns:1fr; } .news-hero { padding:26px 0 40px; } .news-breadcrumb { margin-bottom:32px; } .news-intro { font-size:1.05rem; } .news-layout { padding-block:36px 56px; } .news-index nav { grid-template-columns:1fr; gap:0; } .news-region { margin-bottom:40px; } .news-method { padding:22px; } .news-edition { display:grid; } }
@media print { .news-index,.news-breadcrumb,.news-page .site-header,.news-page .site-footer { display:none; } .news-layout { display:block; } .news-hero { color:#000; background:#fff; } .news-hero h1,.news-hero h1 em,.news-kicker,.news-cadence { color:#000; } .news-item { break-inside:avoid; } }

.news-teaser-headlines { list-style:none; padding:0; margin:16px 0 0; }
.news-teaser-headlines li { border-bottom:1px solid var(--line); padding:12px 0; }
.news-teaser-headlines span { display:block; color:var(--blue); font-size:.75rem; margin-bottom:3px; }
.news-teaser-headlines a { font-size:.95rem; line-height:1.4; }

/* CJK typography is scoped to the news edition and homepage teaser. */
html[lang="zh-Hans"] .news-page,
html[lang="zh-Hans"] .news-teaser {
  --serif: "Noto Serif SC", "Songti SC", "SimSun", serif;
  font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  line-height: 1.85;
  overflow-wrap: anywhere;
}
html[lang="zh-Hans"] .news-hero h1,
html[lang="zh-Hans"] .news-item h3,
html[lang="zh-Hans"] .news-region h2,
html[lang="zh-Hans"] .news-teaser h2 { line-height:1.4; letter-spacing:normal; }
html[lang="zh-Hans"] .news-teaser-headlines a { line-height:1.7; }
html[lang="zh-Hans"] .news-kicker { letter-spacing:.04em; }
