/* ============================================================
   V8 —— 质感层：纸感题材 · 图录条目 · 克制微交互 · 节奏
   （只做覆盖，不改既有结构；便于单独回滚）
   ============================================================ */

/* ---------- 纸张颗粒（全站极轻噪点，消除"屏幕塑料感"） ---------- */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9;
  pointer-events: none;
  opacity: 0.35;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='linear' slope='0.035'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (prefers-reduced-motion: reduce) { body::before { opacity: 0.2; } }

/* ---------- 图录条目式作品卡片 ---------- */
.art-card { display: block; }
.art-card .art-media {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #EAE6DE;
  border: 1px solid rgba(27, 25, 23, 0.07);
}
.art-card .art-media img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 1.6s cubic-bezier(0.22, 1, 0.36, 1), filter 1.2s var(--ease);
  filter: saturate(0.97);
}
.art-card:hover .art-media img { transform: scale(1.028); filter: saturate(1) brightness(1.015); }
.art-card .art-meta { padding-top: 16px; }
.art-plate {
  font-size: 9.5px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--muted, #8A857A);
  margin-bottom: 9px;
  display: flex;
  gap: 10px;
  align-items: baseline;
  flex-wrap: wrap;
}
.art-plate .ap-sep { opacity: 0.4; }
.art-card .art-title {
  font-family: var(--display);
  font-size: 19px;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4;
  margin-bottom: 6px;
  transition: color var(--t);
}
.art-card:hover .art-title { color: var(--gold-deep); }
.art-card .art-artist {
  font-family: var(--display);
  font-style: italic;
  font-size: 13.5px;
  color: var(--text-2, #4A463E);
  margin-bottom: 8px;
}
.art-card .art-spec {
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--muted, #8A857A);
  line-height: 1.7;
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(27, 25, 23, 0.08);
}
.art-card .art-price { font-size: 13.5px; letter-spacing: 0.04em; color: var(--ink); }

/* ---------- 按钮：克制但有重量 ---------- */
.btn {
  position: relative;
  overflow: hidden;
  transition: background-color 0.45s var(--ease), color 0.45s var(--ease), border-color 0.45s var(--ease), transform 0.35s var(--ease);
}
.btn:hover { transform: translateY(-1px); }
.btn-ink { background: var(--ink, #1B1917); color: #F6F4EF; border: 1px solid var(--ink, #1B1917); }
.btn-ink:hover { background: #2E2B26; }
.btn-gold { border: 1px solid var(--gold, #B08A47); color: var(--gold-deep, #8E6E33); background: transparent; }
.btn-gold:hover { background: var(--gold, #B08A47); color: #FFFDF8; }
.tlink { position: relative; }
.tlink i { transition: transform 0.45s var(--ease); }
.tlink:hover i { transform: translateX(5px); }

/* ---------- 空态：极简文字（不再用图片占位） ---------- */
.empty-tip {
  padding: 64px 20px;
  text-align: center;
  font-size: 12.5px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--muted, #8A857A);
  border-top: 1px solid rgba(27, 25, 23, 0.08);
  border-bottom: 1px solid rgba(27, 25, 23, 0.08);
}
.empty-tip img { display: none !important; }

/* ---------- 章节节奏（打破等距堆叠） ---------- */
.section { padding: 132px 0; }
.section.tight { padding: 84px 0; }
.section.wide { padding: 168px 0; }
.section + .section { border-top: 1px solid rgba(27, 25, 23, 0.06); }
.section-alt { background: #F4F2EC; }
.sec-head { margin-bottom: 62px; padding-bottom: 24px; border-bottom: 1px solid rgba(27, 25, 23, 0.1); display: flex; align-items: baseline; gap: 16px; }

/* ---------- 表格与台账行（更精细的线） ---------- */
.deal-row, .record-row { border-bottom-color: rgba(27, 25, 23, 0.08); }
.deal-row:hover, .record-row:hover { background: rgba(176, 138, 71, 0.045); }
.deal-price, .record-price { font-variant-numeric: tabular-nums; }

/* ---------- 导航：按语言单语显示（双语堆叠会显拥挤、层级混乱） ---------- */
.main-nav { gap: 40px; }
.main-nav a { padding: 7px 0; }
html[lang^="zh"] .nv-en { display: none; }
html[lang^="zh"] .nv-zh { display: block; font-size: 12.5px; letter-spacing: 0.14em; color: var(--ink); margin-top: 0; }
html:not([lang^="zh"]) .nv-zh { display: none; }
html:not([lang^="zh"]) .nv-en { display: block; font-size: 12.5px; letter-spacing: 0.14em; }
.nv-en, .nv-zh { transition: color var(--t), opacity var(--t); }
.main-nav a:hover .nv-en, .main-nav a:hover .nv-zh { opacity: 1; }

/* 首页首屏为象牙白：头部透明、文字保持墨色（无需浅色反转） */
body[data-page="home"] .site-header:not(.scrolled) { background: transparent; }
body[data-page="home"] .site-header:not(.scrolled) .lang-select { border-color: var(--hairline); }

/* ---------- 排印统一：中西混排（中文宋体 · 西文无衬线） ---------- */
.cv-zh, .st-cn,
.page-head .display-title, .page-head h1,
.art-card .art-title,
.ed-head h1, .ed-text .ed-h2,
.jr-lead-body h2, .jr-lead-body h3, .jr-row h4, .jr-rel-list h4,
.exh-body h2, .exh-card h2, .exh-hero-inner h1,
.ovr-info h2, .spotlight-title, .stat-card .num, .cover-stats .mf-block b {
  font-family: var(--mixed);
}
.page-head .display-title, .page-head h1 {
  font-weight: 300;
  letter-spacing: 0.06em;
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.35;
}

/* 章节标题：中文为主标题（宋体）· 英文为小字副标（无衬线） */
.sec-head { flex-direction: column; align-items: flex-start; gap: 10px; border-bottom: 1px solid var(--hairline); }
.sec-zh { order: 1; font-family: var(--mixed); font-size: clamp(23px, 2.3vw, 31px); font-weight: 300; letter-spacing: 0.07em; color: var(--ink); margin-top: 0; }
.sec-en { order: 2; font-family: var(--font); font-size: 9.5px; font-weight: 500; letter-spacing: 0.32em; text-transform: uppercase; color: var(--text-3); }
.section-foot { margin-top: 46px; }
.link-more { font-family: var(--font); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--text-2); border-bottom: 1px solid var(--gold); padding-bottom: 4px; transition: color var(--t); }
.link-more:hover { color: var(--ink); }
.link-more i { font-style: normal; margin-left: 6px; transition: transform var(--t); display: inline-block; }
.link-more:hover i { transform: translateX(4px); }

/* 内页页头：中文标题 + 英文副标 */
.page-head .sub { font-family: var(--font); font-size: 12.5px; line-height: 2; color: var(--text-2); }
.page-head .eyebrow { font-family: var(--font); font-size: 9.5px; letter-spacing: 0.34em; color: var(--gold-deep); }

/* ---------- PWA / 独立应用窗口 ---------- */
.pwa-install {
  font-size: 11px; letter-spacing: 0.14em; color: var(--text-2);
  border-bottom: 1px solid var(--gold); padding-bottom: 3px;
  transition: color var(--t), opacity var(--t);
}
.pwa-install:hover { color: var(--ink); }
.pwa-install[hidden] { display: none; }
/* 以独立窗口运行（安装为应用 / TWA）时：为全面屏底部安全区让位 */
html.pwa-standalone .chat-fab { bottom: calc(26px + env(safe-area-inset-bottom, 0px)); }
html.pwa-standalone .footer-bottom { padding-bottom: calc(28px + env(safe-area-inset-bottom, 0px)); }

/* ---------- 窄屏顶栏：账户入口移入下拉，避免顶栏溢出与不可点击 ----------
   注意：本文件经 @import 引入，规则位置在 style.css 自身规则之前，
   同权重会被 style.css 覆盖，因此覆盖必须显式提高权重（前缀 .site-header）。 */
.nav-account { display: none; }
@media (max-width: 1024px) {
  .site-header .nav-user { display: none; }
  .site-header .nav-right { gap: 10px; }
  .site-header .nav-account { display: flex; flex-direction: column; padding-top: 4px; }
  .site-header .nav-account a { padding: 14px 0; border-bottom: 1px solid var(--hairline-2); font-size: 13px; color: var(--ink); }
  .site-header .nav-account a.who { font-weight: 500; }
}
@media (max-width: 640px) {
  .site-header .lg-en { font-size: 15px; letter-spacing: 0.22em; }
  .site-header .lg-zh { font-size: 9px; letter-spacing: 0.24em; }
  .site-header .lang-select { font-size: 11px; padding-right: 16px; }
}

/* ---------- 页头更克制 ---------- */
.page-head { padding: 118px 0 76px; }
.page-head .sub { max-width: 62ch; }

/* ---------- 响应式 ---------- */
@media (max-width: 1024px) {
  .section { padding: 100px 0; }
  .section.wide { padding: 120px 0; }
}
@media (max-width: 640px) {
  .section { padding: 76px 0; }
  .section.tight { padding: 56px 0; }
  .sec-head { margin-bottom: 40px; flex-direction: column; gap: 6px; }
  .art-card .art-title { font-size: 17px; }
}
