/* Alexander McQueen 档案站 — 风格令牌（本项目自有，不继承任何其他项目风格）
   令牌规则：底/主字/次字 + 双强调色结构（格纹红为主，藏青为门 hover 次强调）
   结构版式锁定山本基准站，仅令牌为本项目图证取色。

   ── 令牌取色依据（图证像素采样，帧留存 SITE_BUILD_KIT/TOKEN_COLOR_EVIDENCE/）──
   图证源：1995 FW Highland Rape 秀场录像（本地在库 04_视频/A_秀场/1995_FW_Highland_Rape/
   Alexander_McQueen_automne-hiver_1995-1996 [x2guo3k].mp4），格纹帧精确抽取：
   · HR95_t1410.png（23:30 红格纹裤特写，红底黑/藏青 Watch 交叉带 + 黄线）
   · HR95_t1408.png（23:28 红格纹上装特写，同格纹组织）
   · HR95_t1275.png（21:15 军红外套黑领，红衫军（Redcoat）红佐证帧）

   --accent   #9c2331 ← 格纹红。采样：t1410 主区 #9f343c(29321px)、双帧池化 #8f2e34、
               全幅 vivid 池化 #a7252f；三值居中去浊定标 #9c2331；骨白底对比 6.5:1。
               同族辅证：02_图片/A_设计师本人/03_本人设计实物/VANDA_本人时期实物/
               O1775242_2002.jpg（V&A 绯红大衣 S.477-2024，hub 剪裁门图）主色 #9c0825。
   --accent-2 #25283b ← 格纹藏青（Watch 带线）。采样：t1410 #21283b(50814px)、
               t1408 #29283b(14514px)，池化 #25283b，UI 直用采样值；仅用于门 hover。
   暗面 #12141d ← 格纹帧藏青黑带 #21283b 去舞台紫光定标（夜场黑，替代旧暖黑 #14100d）；
               暗面文字灰族随同转冷灰（#b4b8c6/#c6cad8/#7f88a0/#6a7288）。
   中性色不变：骨白 #efe9df / 墨 #1b1613 / 次字灰 #6e655b / 线 #d8cfc0。
   如实备注：Q6_scotland 门库存（fall_2006 Widows of Culloden 12 张 + 门图 3 张）经像素
   扫描为中性高地粗花呢/织金（无格纹红像素，红系采样均为发型/灯光琥珀色），故彩源
   改锚在库 Highland Rape 秀场录像帧（Highland Rape 即格纹系列本源），特此存证。
   区分声明：巴伦西亚加站=单一西班牙深红；山本站=#b32025 单红于纯黑。本站=格纹红+
   藏青双强调 + 藏青门 hover + 藏青黑暗面，三者不雷同。 */
:root {
  --bg: #efe9df;          /* 骨白 */
  --ink: #1b1613;         /* 墨 */
  --gray: #6e655b;        /* 次字灰 */
  --line: #d8cfc0;        /* 细分隔线 */
  --accent: #9c2331;      /* 格纹红：主强调（取色依据见文件头注释块） */
  --accent-2: #25283b;    /* 格纹藏青：门 hover 次强调（t1410/t1408 采样池化直用） */
  --night: #12141d;       /* 藏青黑暗面（cine/quote-curtain/deep/灯箱底） */
  --serif: Georgia, "Times New Roman", "Songti SC", "SimSun", serif;
  --sans: -apple-system, "Segoe UI", "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { background: var(--bg); color: var(--ink); font-family: var(--sans); line-height: 1.9; font-size: 16px; }
img { display: block; max-width: 100%; }
a { color: inherit; }
button { font-family: inherit; }

/* ---------- 档案头 ---------- */
.arch-head {
  position: sticky; top: 0; z-index: 40;
  display: flex; align-items: center; gap: 28px; flex-wrap: wrap;
  padding: 14px clamp(16px, 4vw, 40px);
  background: rgba(239, 233, 223, 0.96); border-bottom: 1px solid var(--line);
}
.arch-head .brand { font-family: var(--serif); font-size: 17px; letter-spacing: 0.04em; }
.arch-tabs { display: flex; gap: 4px; flex-wrap: wrap; }
.arch-tabs .tab {
  border: 0; background: transparent; cursor: pointer;
  font-size: 15px; color: var(--gray); padding: 6px 12px; letter-spacing: 0.06em;
}
.arch-tabs .tab:hover { color: var(--ink); }
.arch-tabs .tab.active { color: var(--accent); text-decoration: underline; text-underline-offset: 6px; }
.arch-head .back { margin-left: auto; font-size: 14px; color: var(--gray); text-decoration: none; }
.arch-head .back:hover { color: var(--accent); }

/* ---------- 面板骨架 ---------- */
#archMain { max-width: 1180px; margin: 0 auto; padding: clamp(24px, 5vh, 56px) clamp(16px, 4vw, 40px) 12vh; }
.panel { display: none; }
.panel.active { display: block; }
.panel h2 { font-family: var(--serif); font-weight: normal; font-size: clamp(22px, 3vw, 30px); margin-bottom: 8px; }
.panel .sub { color: var(--gray); font-size: 14px; margin-bottom: 28px; }
.kicker { color: var(--gray); font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; }

/* ---------- 设计师面板 ---------- */
.designer-top { display: flex; gap: clamp(20px, 4vw, 48px); align-items: flex-start; flex-wrap: wrap; margin-bottom: 56px; }
.portrait { width: min(280px, 70vw); flex: 0 0 auto; }
.portrait img { width: 100%; border: 1px solid var(--line); }
.portrait figcaption { font-size: 12px; color: var(--gray); margin-top: 8px; line-height: 1.7; }
.designer-intro { flex: 1 1 320px; min-width: 0; }
.designer-intro .name { font-family: var(--serif); font-size: clamp(26px, 4vw, 40px); line-height: 1.3; }
.designer-intro .dates { color: var(--gray); font-size: 14px; margin-bottom: 18px; }
.timeline { margin-top: 18px; }
.timeline table { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.timeline td { padding: 9px 12px 9px 0; vertical-align: top; border-bottom: 1px solid var(--line); }
.timeline td.year { white-space: nowrap; font-family: var(--serif); width: 120px; }
.timeline td.src { color: var(--gray); font-size: 12px; white-space: nowrap; }
.timeline td.src a { color: var(--gray); }
.timeline td.src a:hover { color: var(--accent); }
.interview-block, .quote-wall { margin-top: 64px; }
.interview-block h3, .quote-wall h3 { font-family: var(--serif); font-weight: normal; font-size: 20px; margin-bottom: 14px; }
.interview-block p { font-size: 14.5px; color: var(--ink); max-width: 760px; }
.interview-block .gap { color: var(--gray); font-size: 13.5px; margin-top: 6px; }
.interview-block a { color: var(--accent); }
.q-card { max-width: 780px; margin-bottom: 34px; }
.q-card .en { font-family: var(--serif); font-size: clamp(17px, 2.2vw, 21px); line-height: 1.75; }
.q-card .zh { font-size: 14px; color: var(--gray); margin-top: 8px; }
.q-card .src { font-size: 12.5px; color: var(--gray); margin-top: 8px; }
.q-card .src::before { content: "—— "; }

/* ---------- 收藏卡网格 ---------- */
.cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 22px; }
.card { min-width: 0; text-decoration: none; }
.card .cover { aspect-ratio: 2 / 3; overflow: hidden; border: 1px solid var(--line); background: #e4dcd0; }
.card .cover img { width: 100%; height: 100%; object-fit: cover; }
.card .card-t { font-family: var(--serif); font-size: 16px; margin-top: 10px; line-height: 1.5; overflow-wrap: anywhere; }
.card .card-m { font-size: 12.5px; color: var(--gray); margin-top: 2px; }
.card:hover .card-t { color: var(--accent); }

/* ---------- 图片缩略图库：小图留白 ---------- */
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 22px; }
.grid .ph { min-width: 0; cursor: zoom-in; }
.grid .ph img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border: 1px solid var(--line); }
.grid .ph figcaption { font-size: 12px; color: var(--gray); margin-top: 6px; line-height: 1.6; }
.chips { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 26px; }
.chips .chip {
  border: 1px solid var(--line); background: transparent; color: var(--gray);
  padding: 5px 14px; cursor: pointer; font-size: 14px; letter-spacing: 0.08em;
}
.chips .chip.active { border-color: var(--accent); color: var(--accent); }
.more-btn {
  display: block; margin: 34px auto 0; border: 1px solid var(--ink); background: transparent;
  color: var(--ink); padding: 9px 26px; cursor: pointer; font-size: 14px; letter-spacing: 0.1em;
}
.more-btn:hover { border-color: var(--accent); color: var(--accent); }

/* ---------- 视频卡 ---------- */
.vcards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 22px; }
.vcard { border: 1px solid var(--line); padding: 18px; background: rgba(255,255,255,0.35); }
.vcard .v-season { font-size: 12px; letter-spacing: 0.14em; color: var(--gray); }
.vcard .v-title { font-family: var(--serif); font-size: 18px; margin: 6px 0 4px; line-height: 1.5; }
.vcard .v-meta { font-size: 12.5px; color: var(--gray); margin-bottom: 12px; }
.vcard .v-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.vcard .v-actions button, .vcard .v-actions a {
  font-size: 13px; border: 1px solid var(--ink); background: transparent; color: var(--ink);
  padding: 5px 14px; cursor: pointer; text-decoration: none;
}
.vcard .v-actions button:hover, .vcard .v-actions a:hover { border-color: var(--accent); color: var(--accent); }
.vcard.disabled { opacity: 0.55; }
.footnote { font-size: 13px; color: var(--gray); margin-top: 26px; max-width: 760px; }

/* ---------- 书籍/来源 ---------- */
.file-list { list-style: none; max-width: 860px; }
.file-list li { display: flex; gap: 14px; align-items: baseline; padding: 9px 0; border-bottom: 1px solid var(--line); font-size: 14px; }
.file-list li .f-size { color: var(--gray); font-size: 12px; white-space: nowrap; }
.file-list li a { text-decoration: none; }
.file-list li a:hover { color: var(--accent); }
.book-card { border: 1px solid var(--line); padding: 20px 24px; max-width: 760px; margin-bottom: 18px; background: rgba(255,255,255,0.35); }
.book-card .b-t { font-family: var(--serif); font-size: 19px; }
.book-card .b-s { font-size: 13px; color: var(--gray); margin: 6px 0 12px; }
.book-card a { color: var(--accent); font-size: 14px; }
.empty-note { font-size: 14px; color: var(--gray); max-width: 720px; }

/* ---------- 灯箱 ---------- */
.lightbox, .vbox { position: fixed; inset: 0; z-index: 90; }
.lightbox[hidden], .vbox[hidden] { display: none; }
.lb-backdrop { position: absolute; inset: 0; background: rgba(14, 16, 24, 0.9); }
.lb-body { position: relative; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 4vh 4vw; pointer-events: none; }
.lb-body > * { pointer-events: auto; }
.lb-body img { max-height: 78vh; max-width: 92vw; width: auto; height: auto; background: var(--bg); }
#lbCap { color: #efe9df; font-size: 13px; margin-top: 14px; text-align: center; max-width: 900px; line-height: 1.8; }
#lbCap a { color: #efe9df; }
.lb-actions { margin-top: 12px; display: flex; gap: 14px; }
.lb-actions a { color: #efe9df; font-size: 13.5px; text-decoration: none; border: 1px solid rgba(239,233,223,0.5); padding: 5px 14px; }
.lb-actions a:hover { border-color: #efe9df; }
.vbox-body { position: relative; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; pointer-events: none; }
.vbox-body > * { pointer-events: auto; }
.vbox-body iframe { width: min(1000px, 92vw); aspect-ratio: 16 / 9; border: 0; background: #000; }
.vbox-actions { margin-top: 14px; display: flex; gap: 14px; }
.vbox-actions a { color: #efe9df; font-size: 13.5px; text-decoration: none; border: 1px solid rgba(239,233,223,0.5); padding: 5px 14px; }

/* ---------- 系列详情页 ---------- */
.col-main { max-width: 1180px; margin: 0 auto; padding: clamp(24px, 5vh, 56px) clamp(16px, 4vw, 40px) 12vh; }
.col-meta { margin-bottom: 40px; }
.col-title { font-family: var(--serif); font-weight: normal; font-size: clamp(24px, 3.4vw, 36px); margin: 6px 0 14px; }
.col-note { max-width: 860px; font-size: 15px; }
.col-src { font-size: 13px; color: var(--gray); margin-top: 12px; }
.col-src a { color: var(--accent); }


/* ---------- 占位首页 ---------- */
.hold { max-width: 760px; margin: 18vh auto 0; padding: 0 24px; text-align: center; }
.hold h1 { font-family: var(--serif); font-weight: normal; font-size: clamp(26px, 4vw, 38px); margin-bottom: 14px; }
.hold p { color: var(--gray); font-size: 15px; margin-bottom: 8px; }
.hold a { color: var(--accent); }

@media (max-width: 640px) {
  .timeline td.year { width: 84px; }
  .arch-head { gap: 12px; }
}

/* ---------- 枢纽首页（版式对齐基准站：小图门 + 4 列 1px 缝隙） ---------- */
.home-head {
  display: flex; justify-content: space-between; align-items: center;
  padding: 1.6rem 3.5vw; border-bottom: 1px solid var(--line);
}
.home-head .brand { font-family: var(--serif); font-size: 1.1rem; letter-spacing: 0.18em; color: var(--ink); }
.home-head .arch-link {
  font-size: 0.78rem; letter-spacing: 0.3em; color: var(--gray);
  text-decoration: none; padding-bottom: 0.25rem; border-bottom: 1px solid transparent;
}
.home-head .arch-link:hover { color: var(--ink); border-color: var(--gray); }

.doors-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
}
.door {
  background: var(--bg);
  padding: 2rem 1.6rem 2.4rem;
  display: flex; flex-direction: column; gap: 1rem;
  min-height: 300px; min-width: 0;
  text-decoration: none; color: var(--ink);
}
.door .door-thumb {
  width: 88px; height: 118px;
  object-fit: cover;
  filter: saturate(0.9);
}
.door .door-word {
  font-family: var(--serif);
  font-size: 1.9rem;
  letter-spacing: 0.2em;
}
.door .door-q { font-size: 0.9rem; color: var(--gray); line-height: 1.8; flex: 1; }
.door .door-q small { display: block; margin-top: 0.35em; font-size: 0.72rem; line-height: 1.8; }
.door .door-src { display: block; font-size: 0.68rem; color: var(--gray); letter-spacing: 0.04em; line-height: 1.8; }
.door .door-state { font-size: 0.72rem; letter-spacing: 0.3em; color: var(--gray); }
.door:hover { background: #e4dcd0; }
.door:hover .door-word { box-shadow: inset 0 -0.16em 0 var(--accent-2); width: fit-content; }
.door:hover .door-q { color: var(--ink); }
.door:hover .door-state { color: var(--accent-2); }

body.home footer, .exp footer, body.arch footer {
  border-top: 1px solid var(--line);
  padding: 3.2rem 8vw 4rem;
  color: var(--gray);
  font-size: 0.78rem;
  letter-spacing: 0.12em;
}
@media (max-width: 880px) { .doors-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .doors-grid { grid-template-columns: minmax(0, 1fr); } }

/* ---------- 体验路径页 ---------- */
body.exp { --expbg: #e9e2d6; }
.cine {
  position: fixed; inset: 0; z-index: 200; background: var(--night); color: #efe9df;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 26px;
  cursor: pointer; text-align: center; padding: 0 8vw;
}
.cine.gone { display: none; }
.cine-line {
  font-family: var(--serif); font-size: clamp(19px, 3.2vw, 30px); line-height: 1.9; opacity: 0;
  animation: cineIn 1.1s forwards; animation-delay: calc(var(--i) * 1.15s); max-width: 900px;
}
.cine-line .zh { display: block; font-size: 0.62em; color: #b4b8c6; margin-top: 10px; }
.cine-line .src { display: block; font-family: var(--sans); font-size: 0.42em; color: #7f88a0; margin-top: 12px; letter-spacing: 0.06em; }
@keyframes cineIn { to { opacity: 1; } }
.cine-skip { position: absolute; bottom: 26px; font-size: 12px; color: #7f88a0; }

.topbar {
  position: sticky; top: 0; z-index: 50; display: flex; justify-content: space-between;
  padding: 14px clamp(16px, 4vw, 40px); background: rgba(233, 226, 214, 0.95);
  border-bottom: 1px solid var(--line); font-size: 14px;
}
.topbar a { color: var(--gray); text-decoration: none; }
.topbar a:hover { color: var(--accent); }

.exp main { max-width: 1180px; margin: 0 auto; }
.l1 { position: relative; height: 92vh; min-height: 520px; overflow: hidden; }
.l1 img.bg { width: 100%; height: 100%; object-fit: cover; }
.l1 .l1-text {
  position: absolute; left: 0; right: 0; bottom: 0; padding: clamp(20px, 5vw, 60px);
  background: linear-gradient(transparent, rgba(20, 16, 13, 0.82)); color: #efe9df;
}
.l1 .l1-tag { font-size: 12.5px; letter-spacing: 0.2em; }
.l1 .l1-sentence { font-family: var(--serif); font-size: clamp(17px, 2.6vw, 24px); line-height: 1.9; margin-top: 10px; }
.l1 .l1-src { font-size: 12px; color: #c6cad8; margin-top: 10px; }
.l1 .scroll-cue { position: absolute; right: clamp(20px, 5vw, 60px); bottom: 20px; font-size: 12px; color: #c6cad8; }

.section { padding: 13vh clamp(16px, 4vw, 40px); max-width: 1180px; margin: 0 auto; }
.kicker { color: var(--accent); font-size: 12px; letter-spacing: 0.24em; }
.section-title { font-family: var(--serif); font-weight: normal; font-size: clamp(22px, 3.2vw, 32px); line-height: 1.6; margin: 10px 0 14px; }
.section-sub, .lede { color: var(--gray); font-size: 15px; max-width: 820px; margin-bottom: 30px; }
.frame-note { font-size: 13px; color: var(--gray); border-left: 2px solid var(--line); padding-left: 12px; margin-bottom: 34px; max-width: 820px; }

.q-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 22px; }
.q-card2 { border: 1px solid var(--line); padding: 22px 24px; background: rgba(255,255,255,0.4); }
.q-card2 .en { font-family: var(--serif); font-size: 17px; line-height: 1.8; }
.q-card2 .zh { font-size: 13px; color: var(--gray); margin-top: 8px; }
.q-card2 .src { font-size: 12px; color: var(--gray); margin-top: 10px; }
.q-card2 .src::before { content: "—— "; }
.q-card2 .ref { font-size: 11px; color: var(--gray); letter-spacing: 0.1em; margin-top: 4px; }

.evidence-item { display: flex; gap: clamp(20px, 4vw, 48px); align-items: center; margin: 60px 0; }
.evidence-item.flip { flex-direction: row-reverse; }
.evidence-item figure { flex: 0 0 min(46%, 460px); min-width: 0; cursor: zoom-in; }
.evidence-item figure img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border: 1px solid var(--line); }
.evidence-item .ev-body { flex: 1; min-width: 0; }
.ev-tag { font-size: 12px; letter-spacing: 0.18em; color: var(--gray); }
.ev-body h3 { font-family: var(--serif); font-weight: normal; font-size: 20px; margin: 8px 0 10px; }
.ev-body .ev-fact { font-size: 14.5px; line-height: 2; }
.ev-body .ev-fact .src { font-size: 12px; color: var(--gray); }
.ev-body .q-en { font-family: var(--serif); font-size: 16px; line-height: 1.85; margin-top: 12px; }
.ev-body .q-zh { font-size: 12.5px; color: var(--gray); margin-top: 6px; }
.ev-body .q-src { font-size: 11.5px; color: var(--gray); margin-top: 4px; }
.arch-hint { font-size: 13px; color: var(--gray); margin-bottom: 10px; }

.quote-curtain { background: var(--night); color: #efe9df; padding: 16vh clamp(16px, 4vw, 40px); text-align: center; }
.quote-curtain .q-text { font-family: var(--serif); font-size: clamp(20px, 3.4vw, 32px); line-height: 2; max-width: 980px; margin: 0 auto; }
.quote-curtain .q-zh { font-size: clamp(13px, 1.6vw, 15px); color: #b4b8c6; max-width: 820px; margin: 18px auto 0; line-height: 2; }
.quote-curtain .q-attr { font-size: 12.5px; color: #7f88a0; margin-top: 22px; }
.quote-curtain .q-ref { font-size: 11px; color: #6a7288; margin-top: 6px; letter-spacing: 0.1em; }

.cmp-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 22px; margin-top: 30px; }
.cmp { min-width: 0; border: 1px solid var(--line); background: rgba(255,255,255,0.4); }
.cmp img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.cmp .cmp-body { padding: 14px 16px 18px; }
.cmp .cmp-name { font-size: 13px; letter-spacing: 0.12em; }
.cmp .cmp-season { font-size: 12px; color: var(--gray); margin-top: 3px; }
.cmp .cmp-desc { font-size: 12.5px; color: var(--gray); margin-top: 8px; line-height: 1.8; }
.cmp .cmp-src { font-size: 11.5px; margin-top: 8px; }
.cmp .cmp-src a { color: var(--accent); }
.cmp.mq { border-color: var(--accent); }
.cmp-close { font-size: 13px; color: var(--gray); margin-top: 24px; max-width: 860px; }

.closing .q-zh { font-size: clamp(13px, 1.6vw, 15px); color: #b4b8c6; max-width: 820px; margin: 18px auto 0; line-height: 2; }
.closing .q-attr { font-size: 12.5px; color: #7f88a0; margin-top: 22px; }
.closing .q-ref { font-size: 11px; color: #6a7288; margin-top: 6px; letter-spacing: 0.1em; }
.closing .toc { display: inline-block; margin-top: 40px; color: #b4b8c6; font-size: 13.5px; }

.rel-arch .col-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 22px; margin-top: 24px; }
.col-card { border: 1px solid var(--line); padding: 18px 20px; text-decoration: none; background: rgba(255,255,255,0.4); }
.col-card:hover { border-color: var(--accent); }
.col-card .c-en { font-size: 12px; letter-spacing: 0.14em; color: var(--gray); }
.col-card .c-zh { font-family: var(--serif); font-size: 17px; margin: 6px 0; }
.col-card .c-meta { font-size: 12.5px; color: var(--gray); }
.toc { display: inline-block; margin-top: 26px; font-size: 13.5px; color: var(--gray); }

.deep-toggle {
  position: fixed; right: 22px; bottom: 22px; z-index: 80;
  border: 1px solid var(--gray); background: rgba(233,226,214,0.92); color: var(--gray);
  font-size: 13px; letter-spacing: 0.3em; padding: 9px 14px 9px 17px; cursor: pointer;
}
.deep-toggle:hover { color: var(--accent); border-color: var(--accent); }
.deep { position: fixed; inset: 0; z-index: 120; background: rgba(14, 16, 24, 0.97); overflow-y: auto; }
.deep[hidden] { display: none; }
.deep-close {
  position: sticky; top: 18px; margin-left: calc(100% - 60px); border: 1px solid #6a7288;
  background: transparent; color: #b4b8c6; font-size: 16px; width: 38px; height: 38px; cursor: pointer;
}
.deep-inner { max-width: 880px; margin: 0 auto; padding: 20px clamp(16px, 4vw, 40px) 120px; color: #efe9df; }
.deep-inner h2 { font-family: var(--serif); font-weight: normal; font-size: 26px; }
.deep-inner h3 { font-family: var(--serif); font-weight: normal; font-size: 19px; margin: 44px 0 16px; color: #c6cad8; }
.deep-inner .deep-sub { color: #7f88a0; font-size: 13.5px; margin-top: 8px; }
.q-block { margin: 22px 0; }
.q-block .q-orig { font-family: var(--serif); font-size: 16.5px; line-height: 2; }
.q-block .q-zh { font-size: 13px; color: #b4b8c6; margin-top: 8px; line-height: 1.9; }
.q-block .q-src { font-size: 12px; color: #7f88a0; margin-top: 6px; }
.q-block .q-ref { font-size: 11px; color: #6a7288; margin-top: 2px; letter-spacing: 0.08em; }
.tl { list-style: none; }
.tl li { display: flex; gap: 18px; padding: 10px 0; border-bottom: 1px solid #262d3f; font-size: 14px; line-height: 1.9; }
.tl .yr { font-family: var(--serif); white-space: nowrap; width: 120px; color: #c6cad8; }
.tl .tl-src { display: block; font-size: 11.5px; color: #7f88a0; }
.src-list { list-style: none; font-size: 13.5px; color: #c6cad8; }
.src-list li { padding: 7px 0; border-bottom: 1px solid #262d3f; }
.src-list a { color: #c6cad8; }
.deep-note { font-size: 12.5px; color: #7f88a0; margin-top: 40px; }

.reveal { opacity: 0; transform: translateY(26px); transition: opacity 0.9s, transform 0.9s; }
.reveal.seen { opacity: 1; transform: none; }

/* 灯箱（体验页内联实现，同档案层规格） */
.xlb { position: fixed; inset: 0; z-index: 150; }
.xlb[hidden] { display: none; }
.xlb .lb-backdrop { position: absolute; inset: 0; background: rgba(14, 16, 24, 0.92); }
.xlb .lb-body { position: relative; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; pointer-events: none; }
.xlb .lb-body > * { pointer-events: auto; }
.xlb img { max-height: 76vh; max-width: 92vw; background: var(--bg); }
.xlb .xlb-cap { color: #efe9df; font-size: 13px; margin-top: 12px; text-align: center; max-width: 900px; }
.xlb .xlb-actions { margin-top: 10px; display: flex; gap: 14px; }
.xlb .xlb-actions a { color: #efe9df; font-size: 13px; border: 1px solid rgba(239,233,223,0.5); padding: 5px 14px; text-decoration: none; }

/* 去除重复的 .kicker 覆盖：体验页 kicker 用强调色（区别档案页灰色 kicker） */
body.exp .kicker { color: var(--accent); }
