/* 新闻动态页（frontend/news.html）
   排版布局参考 Anthropic Newsroom（内容宽 946px、大标题 52px、三列清单、See more 全宽按钮），
   配色沿用官网设计 token（暖白纸底 + 近黑文字 + 品牌橙点缀）。
   基础样式（导航 / 按钮 / footer）来自 home.css，本文件只写新闻页专属部分。 */

.news-page { padding: 156px 0 0; }
/* 与官网同一宽幅（--shell 来自 home.css）：原 946px（照搬 Anthropic 窄栏）在宽屏下显得“挤在中间” */
.news-shell { width: var(--shell); margin: 0 auto; }

/* ---- 标题区：左大标题 + 右联系信息表 ---- */
.newsroom-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 420px); align-items: start; gap: clamp(28px, 5vw, 80px); padding-bottom: 44px; border-bottom: 1px solid var(--line); }
.newsroom-head h1 { margin: 0; font-size: clamp(42px, 4.6vw, 52px); font-weight: 700; line-height: 1.08; letter-spacing: -.02em; }
.newsroom-contact { display: grid; }
.nc-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 13px 0; border-bottom: 1px solid var(--line); font-size: 15px; }
.nc-row:first-child { border-top: 1px solid var(--line); }
.nc-row > span { color: var(--muted); }
.nc-row a { font-weight: 600; transition: color .2s; }
.nc-row a:hover { color: var(--orange-deep); }

/* ---- 特色区：左侧头条卡 + 右侧最新条目 ---- */
.feature-shell { display: grid; grid-template-columns: minmax(0, 1.85fr) minmax(0, 1fr); gap: clamp(28px, 3.4vw, 48px); padding: clamp(36px, 3.4vw, 48px) 0; border-bottom: 1px solid var(--line); }
.feature-card { display: grid; gap: 24px; align-content: start; }

.feature-visual { position: relative; aspect-ratio: 16 / 8.4; overflow: hidden; border-radius: 12px; background: linear-gradient(150deg, #17140f, #2a2019 58%, #3a2415); }
.fv-grid { position: absolute; inset: 0; opacity: .3; background-image: linear-gradient(rgba(255,255,255,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.1) 1px, transparent 1px); background-size: 46px 46px; mask-image: radial-gradient(circle at 62% 40%, #000 30%, transparent 78%); }
.fv-ring { position: absolute; border: 1px solid rgba(232,95,37,.5); border-radius: 50%; }
.fv-ring-a { width: 300px; height: 300px; right: 6%; top: -18%; box-shadow: 0 0 0 34px rgba(232,95,37,.05), 0 0 0 68px rgba(232,95,37,.035); }
.fv-ring-b { width: 180px; height: 180px; right: 24%; bottom: -34%; border-color: rgba(255,255,255,.16); }
.fv-node { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: #f08654; box-shadow: 0 0 0 6px rgba(232,95,37,.12), 0 0 22px rgba(240,116,60,.7); }
.fv-node-a { right: 21%; top: 26%; }
.fv-node-b { right: 38%; bottom: 30%; }
.fv-node-c { left: 16%; top: 44%; background: #fffdf9; box-shadow: 0 0 0 6px rgba(255,255,255,.1); }
.fv-mark { position: absolute; left: 30px; bottom: 24px; color: #fffdf9; font: 700 34px/1 var(--font-mono); letter-spacing: .08em; opacity: .92; }

.feature-meta { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: clamp(20px, 2.6vw, 36px); align-items: start; }
.feature-meta h2 { margin: 0; font-size: clamp(26px, 2.4vw, 32px); font-weight: 600; line-height: 1.2; letter-spacing: -.02em; }
.feature-side { padding-top: 4px; }
.feature-side p { margin: 12px 0 0; color: var(--muted); font-size: 14px; line-height: 1.75; }

.meta-line { display: flex; align-items: center; gap: 12px; }
.meta-line .news-cat { font-size: 13.5px; font-weight: 600; color: var(--ink); }
.meta-line time { color: #8a867e; font: 500 12.5px/1 var(--font-mono); letter-spacing: .04em; }
.side-item .meta-line time { margin-left: auto; }

.side-list { display: grid; align-content: start; }
.side-item { padding: 0 0 22px; margin-bottom: 22px; border-bottom: 1px solid var(--line); }
.side-item:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.side-item h3 { margin: 10px 0 8px; font-size: 19px; font-weight: 650; line-height: 1.35; letter-spacing: -.015em; }
.side-item p { margin: 0; color: var(--muted); font-size: 13.5px; line-height: 1.7; }

/* ---- 全部动态：三列清单 + 搜索 + 查看更多 ---- */
.news-index { padding: clamp(44px, 4.4vw, 60px) 0 clamp(64px, 6vw, 92px); }
.news-index-head { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 26px; }
.news-index h2 { margin: 0; font-size: clamp(28px, 2.6vw, 32px); font-weight: 600; letter-spacing: -.02em; }
.news-search { position: relative; display: block; }
.news-search svg { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: #8a867e; pointer-events: none; }
.news-search input { width: 300px; max-width: 46vw; height: 44px; padding: 8px 16px 8px 42px; border: 1px solid rgba(17,16,15,.2); border-radius: 12px; background: #fff; color: var(--ink); font-size: 14px; outline: none; transition: border-color .2s, box-shadow .2s; }
.news-search input:focus { border-color: var(--ink); box-shadow: 0 0 0 3px rgba(17,16,15,.06); }
.news-search input::placeholder { color: #a49d94; }

.news-rows { border-top: 1px solid var(--line); }
.news-row { display: grid; grid-template-columns: 150px 150px minmax(0, 1fr); gap: clamp(16px, 2.4vw, 36px); align-items: baseline; padding: 15px 0; border-bottom: 1px solid var(--line); font-size: 15.5px; }
.news-row-head { padding: 10px 0; color: #8a867e; font: 600 11px/1 var(--font-mono); letter-spacing: .12em; }
.nr-date { color: var(--muted); font: 500 13.5px/1.6 var(--font-mono); letter-spacing: .03em; }
.nr-cat { color: var(--muted); font-size: 14px; }
.nr-title { font-weight: 500; line-height: 1.55; transition: color .2s; }
article.news-row:hover .nr-title { color: var(--orange-deep); }
.news-row.is-collapsed { display: none; }
.news-row.is-filtered { display: none; }

.see-more { width: 100%; height: 46px; margin-top: 26px; border: 1px solid rgba(17,16,15,.18); border-radius: 8px; background: #f5f4ed; color: var(--ink); font-size: 15px; cursor: pointer; transition: background .2s; }
.see-more:hover { background: #edeae0; }

/* 当前栏目高亮（导航“新闻动态”） */
.desktop-nav a.current { color: var(--orange-deep); }
.desktop-nav a.current::after { right: 0; }
.mobile-nav a[aria-current] { color: var(--orange-deep); }

/* 详情入口：标题内链接继承颜色，悬停变橙（列表卡 / 侧栏 / 清单） */
.feature-meta h2 a, .side-item h3 a, .nr-title a { color: inherit; }
.feature-meta h2 a:hover, .side-item h3 a:hover, .nr-title a:hover { color: var(--orange-deep); }

@media (max-width: 900px) {
  .news-page { padding-top: 118px; }
  .newsroom-head { grid-template-columns: 1fr; gap: 26px; }
  .feature-shell { grid-template-columns: 1fr; }
  .feature-meta { grid-template-columns: 1fr; }
  .feature-visual { aspect-ratio: 16 / 9.6; }
}
@media (max-width: 760px) {
  .news-index-head { flex-direction: column; align-items: stretch; }
  .news-search input { width: 100%; max-width: none; }
  .news-row { grid-template-columns: minmax(0, 1fr); gap: 4px; padding: 14px 0; }
  .news-row-head { display: none; }
  .nr-date { font-size: 12.5px; }
  .nr-cat { order: 3; font-size: 12.5px; }
}

/* ---- 新闻详情页（排版参考 Anthropic 正文页：全屏头图 + 窄栏衷线正文） ---- */
.article-hero { position: relative; display: grid; place-items: center; min-height: max(640px, 92vh); padding: 150px 24px 96px; overflow: hidden; color: #fff; text-align: center; background: #17140f; }
.article-hero-art { position: absolute; inset: 0; background: linear-gradient(150deg, #17140f, #2a2019 58%, #3a2415); }
.article-hero-cover { position: absolute; inset: 0; background-size: cover; background-position: center; }
.aha-grid { position: absolute; inset: 0; opacity: .3; background-image: linear-gradient(rgba(255,255,255,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.1) 1px, transparent 1px); background-size: 64px 64px; mask-image: radial-gradient(circle at 60% 34%, #000 30%, transparent 80%); }
.aha-ring { position: absolute; border: 1px solid rgba(232,95,37,.5); border-radius: 50%; }
.aha-ring-a { width: 560px; height: 560px; right: -6%; top: -22%; box-shadow: 0 0 0 56px rgba(232,95,37,.05), 0 0 0 112px rgba(232,95,37,.03); }
.aha-ring-b { width: 320px; height: 320px; left: 8%; bottom: -30%; border-color: rgba(255,255,255,.16); }
.aha-node { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: #f08654; box-shadow: 0 0 0 7px rgba(232,95,37,.12), 0 0 26px rgba(240,116,60,.7); }
.aha-node-a { right: 20%; top: 24%; }
.aha-node-b { right: 34%; bottom: 26%; }
.aha-node-c { left: 14%; top: 40%; background: #fffdf9; box-shadow: 0 0 0 7px rgba(255,255,255,.1); }
.article-hero-veil { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,8,6,.5), rgba(10,8,6,.24) 42%, rgba(10,8,6,.72)); }
.article-hero-inner { position: relative; z-index: 2; width: min(1040px, calc(100vw - 48px)); }
.article-kicker { display: inline-flex; align-items: center; gap: 14px; color: rgba(255,255,255,.72); font: 500 12.5px/1 var(--font-mono); letter-spacing: .14em; text-transform: uppercase; }
.article-kicker i { width: 26px; height: 1px; background: rgba(255,255,255,.4); }
.article-title { margin: 30px 0 0; font-family: "Songti SC", "Noto Serif SC", "Source Han Serif SC", "STSong", "SimSun", serif; font-size: clamp(38px, 4.4vw, 66px); font-weight: 400; line-height: 1.18; letter-spacing: .005em; text-wrap: balance; }
.article-toc { display: grid; justify-items: center; gap: 10px; margin-top: 54px; }
.article-toc a { display: inline-flex; align-items: baseline; gap: 10px; color: rgba(255,255,255,.68); font-size: 14.5px; letter-spacing: .01em; transition: color .2s; }
.article-toc a span { color: rgba(255,255,255,.45); font: 500 12px var(--font-mono); }
.article-toc a:hover { color: #fff; }

.article-shell { width: min(640px, calc(100vw - 48px)); margin: 0 auto; padding: clamp(56px, 6vw, 84px) 0 clamp(64px, 6vw, 96px); }
.article-body { font-family: "Songti SC", "Noto Serif SC", "Source Han Serif SC", "STSong", "SimSun", serif; color: var(--ink); }
.article-section h2 { margin: 64px 0 26px; font-size: clamp(26px, 2.4vw, 32px); font-weight: 500; line-height: 1.4; letter-spacing: .005em; }
.article-section:first-child h2 { margin-top: 0; }
.article-body p { margin: 0 0 22px; font-size: 17px; line-height: 2; color: #23211e; }
.article-body p strong { font-weight: 650; color: var(--ink); }

.article-related { margin-top: 72px; padding-top: 40px; border-top: 1px solid var(--line); }
.article-related h2 { margin: 0 0 24px; font-family: "Songti SC", "Noto Serif SC", "STSong", "SimSun", serif; font-size: 26px; font-weight: 500; }
.article-related-item { display: grid; gap: 6px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.article-related-item .ar-cat { color: var(--orange-deep); font: 600 11px var(--font-mono); letter-spacing: .12em; }
.article-related-item b { font-size: 17px; line-height: 1.5; transition: color .2s; }
.article-related-item i { color: var(--muted); font-size: 13px; font-style: normal; }
.article-related-item:hover b { color: var(--orange-deep); }
.article-back { margin-top: 40px; }
.article-back a { color: var(--muted); font-size: 14px; transition: color .2s; }
.article-back a:hover { color: var(--orange-deep); }

@media (max-width: 760px) {
  .article-hero { min-height: 78vh; padding: 128px 20px 72px; }
  .article-toc { margin-top: 36px; }
  .article-title { text-wrap: normal; }
}

/* —— 新闻编辑器内容扩展（2026-09）：头条大图 / 图上文字 / 大图说明 / 正文配图 —— */
.feature-visual.has-image { background-size: cover; background-position: center; }
.article-hero-note {
  position: absolute; z-index: 2; left: 50%; bottom: 42px; transform: translateX(-50%);
  width: min(900px, calc(100vw - 48px)); text-align: center;
  color: rgba(255, 255, 255, .82); font-size: 13px; letter-spacing: .2em;
}
.article-hero-caption {
  width: min(640px, calc(100vw - 48px)); margin: 0 auto; padding-top: 18px;
  color: #8a8074; font-size: 12.5px; line-height: 1.7; text-align: center;
}
.article-figure { margin: 34px 0 42px; }
.article-figure img { display: block; width: 100%; height: auto; border-radius: 10px; }
.article-figure figcaption { margin-top: 12px; color: #8a8074; font-size: 12.5px; line-height: 1.7; text-align: center; }

@media (max-width: 760px) {
  .article-hero-note { bottom: 26px; font-size: 12px; letter-spacing: .14em; }
  .article-figure { margin: 28px 0 34px; }
}
