/* 基础与阅读尺度 */
:root {
  --night: #080c0a;
  --surface: #101a14;
  --deep-green: #142a1d;
  --ink: #f1f6ee;
  --muted: #a6b4a8;
  --accent: #b6f456;
  --line: #2b3b2f;
  --paper: #e3eddc;
  --paper-ink: #172b1c;
  --page-width: 1160px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 24px; }
body { margin: 0; background: var(--night); color: var(--ink); font-family: "Microsoft YaHei", "PingFang SC", system-ui, sans-serif; font-size: 15px; line-height: 1.85; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
img, video { display: block; max-width: 100%; }
h2, p, figure, dl, dd { margin: 0; }
h2 { font-size: clamp(25px, 3vw, 36px); font-weight: 650; line-height: 1.45; letter-spacing: -.035em; }
a:focus-visible, summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 6px; }
::selection { color: var(--night); background: var(--accent); }
.reading-skip { position: absolute; left: 20px; top: -90px; z-index: 10; padding: 10px 18px; background: var(--accent); color: var(--night); }
.reading-skip:focus { top: 10px; }
.chapter-note { margin-bottom: 16px; color: var(--accent); font-size: 12px; letter-spacing: .13em; }
.section-heading { max-width: 640px; margin-bottom: 42px; }
.section-heading > p:last-child { margin-top: 20px; color: var(--muted); }
main > section, .site-signature, .site-bar__inner { width: min(var(--page-width), calc(100% - 48px)); margin-inline: auto; }
@media (max-width: 350px) {
  main > section, .site-signature, .site-bar__inner { width: calc(100% - 32px); }
}

/* 单组导航及移动端原生菜单 */
.site-bar { border-bottom: 1px solid var(--line); }
.site-bar__inner { min-height: 72px; display: flex; align-items: center; flex-wrap: wrap; position: relative; }
.brand-image { display: inline-block; }
.brand-image img { width: 98px; height: auto; }
.menu-switch { appearance: none; position: absolute; right: 0; top: 14px; width: 44px; height: 44px; margin: 0; cursor: pointer; border-radius: 50%; z-index: 2; }
.menu-switch:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.menu-button { width: 44px; height: 44px; margin-left: auto; display: grid; align-content: center; gap: 6px; justify-content: center; border: 1px solid var(--line); border-radius: 50%; }
.menu-button span { width: 17px; height: 1px; background: var(--ink); transition: transform .16s; }
.menu-switch:checked + .menu-button span:first-child { transform: translateY(3.5px) rotate(45deg); }
.menu-switch:checked + .menu-button span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
.site-navigation { display: none; flex-basis: 100%; grid-template-columns: 1fr 1fr; gap: 4px 16px; padding: 14px 0 22px; }
.menu-switch:checked ~ .site-navigation { display: grid; }
.site-navigation > a { display: flex; align-items: center; min-height: 44px; color: #d4ded2; font-size: 13px; }
.site-navigation > a:hover { color: var(--accent); }
.site-navigation > .device-entry { justify-content: space-between; grid-column: 1 / -1; border-top: 1px solid var(--line); padding-top: 8px; color: var(--accent); }
@media (min-width: 970px) {
  .site-bar__inner { min-height: 86px; flex-wrap: nowrap; justify-content: space-between; }
  .brand-image img { width: 106px; }
  .menu-switch, .menu-button { display: none; }
  .site-navigation, .menu-switch:checked ~ .site-navigation { display: flex; flex-basis: auto; align-items: center; gap: 32px; padding: 0; }
  .site-navigation > .device-entry { border: 1px solid #40523b; border-radius: 7px; padding: 5px 16px; margin-left: 16px; gap: 22px; }
}

/* 开场的独立文字面与原视频 */
.opening { display: grid; align-items: center; padding-block: 60px 64px; gap: 42px; }
.opening__copy { max-width: 590px; }
.opening .chapter-note { font-size: 12px; letter-spacing: .05em; }
.opening h2 { display: grid; gap: 14px; }
.opening__keyword { color: var(--ink); font-size: clamp(34px, 6vw, 58px); line-height: 1.25; overflow-wrap: anywhere; }
.opening__subtitle { font-size: clamp(22px, 3vw, 30px); font-weight: 500; color: var(--accent); letter-spacing: -.02em; }
.opening__intro { max-width: 470px; margin-top: 25px; color: var(--muted); font-size: 15px; }
.opening__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.action-link { display: flex; align-items: center; justify-content: space-between; min-height: 49px; gap: 24px; padding: 10px 22px; border: 1px solid var(--accent); border-radius: 6px; font-weight: 600; font-size: 14px; }
.action-link--solid { background: var(--accent); color: #12200b; }
.action-link--outline { color: var(--ink); border-color: #526144; }
.action-link:hover { filter: brightness(1.12); }
.opening__continue { display: inline-flex; align-items: center; gap: 24px; min-height: 44px; margin-top: 25px; color: #b5c4b4; font-size: 12px; }
.opening__film { width: min(100%, 242px); justify-self: center; }
.opening__film video { width: 100%; height: auto; aspect-ratio: 480 / 1000; object-fit: contain; }
@media (min-width: 790px) {
  .opening { grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 70px; padding-block: 56px 80px; min-height: 660px; }
  .opening__film { width: 252px; }
}
@media (min-width: 1260px) {
  .opening { gap: 110px; }
  .opening__film { width: 264px; }
}

/* 连续检索工作台与放大镜图解 */
.market-finder { padding-block: 70px 84px; border-top: 1px solid var(--line); }
.finder-workspace { display: grid; gap: 38px; border: 1px solid #294332; background: linear-gradient(125deg, #142c1d 0%, #0e1d14 70%); border-radius: 18px; padding: 32px 22px; }
.search-lens { align-self: center; text-align: center; min-width: 0; }
.search-lens__orb { position: relative; width: 208px; height: 208px; margin: 10px auto 38px; border-radius: 50%; border: 1px solid #52813e; background: radial-gradient(circle at 40% 35%, #365629, #132e1b 70%); box-shadow: inset 0 0 0 17px #b6f45608, 0 0 55px #7cbb3110; }
.search-lens__orb::after { content: ""; position: absolute; width: 71px; height: 15px; background: linear-gradient(90deg, #729b43, #2c5227); border: 1px solid #729b43; border-radius: 5px; right: -28px; bottom: -13px; transform: rotate(46deg); }
.search-lens__core { position: absolute; left: 61px; top: 73px; font-size: 26px; font-weight: 600; letter-spacing: .12em; color: #deffc0; }
.search-lens__pair, .search-lens__market { position: absolute; padding: 4px 13px; border-radius: 20px; border: 1px solid #56784b; background: #172e20; color: #cfdfc6; font-size: 12px; }
.search-lens__pair { left: -11px; top: 30px; }
.search-lens__market { right: -7px; bottom: 41px; }
.search-lens figcaption { color: #a7c79a; font-size: 12px; letter-spacing: .1em; }
.finder-notes > div + div { margin-top: 24px; padding-top: 24px; border-top: 1px solid #304733; }
.finder-notes dt { display: flex; gap: 12px; align-items: center; font-size: 17px; font-weight: 600; margin-bottom: 10px; }
.finder-notes dt > span { color: var(--accent); font-size: 21px; width: 24px; }
.finder-notes dd { color: #acbda9; font-size: 14px; }
@media (min-width: 740px) {
  .finder-workspace { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 65px; padding: 48px 50px; }
  .search-lens__orb { width: 240px; height: 240px; }
  .search-lens__core { left: 77px; top: 90px; }
}

/* 浅绿阅读表，保留真实表格关系 */
.field-sheet { background: var(--paper); color: var(--paper-ink); padding: 36px 22px 24px; border-radius: 18px; }
.field-sheet__heading { display: grid; gap: 22px; margin-bottom: 30px; }
.field-sheet .chapter-note { color: #526d3d; }
.field-sheet__heading > p { color: #52614d; font-size: 14px; }
.field-table { width: 100%; border-collapse: collapse; table-layout: fixed; text-align: left; }
.field-table thead th { padding: 12px 0; border-bottom: 1px solid #9aaa8d; color: #5b6c50; font-size: 11px; font-weight: 500; letter-spacing: .04em; }
.field-table thead th:first-child { width: 28%; }
.field-table tbody th, .field-table td { padding: 23px 0; border-bottom: 1px solid #bbc8af; vertical-align: top; }
.field-table tbody tr:last-child > * { border-bottom: 0; }
.field-table tbody th { font-size: 16px; font-weight: 600; padding-right: 12px; }
.field-table td { font-size: 14px; color: #42543b; }
.field-table__glyph { display: block; margin-bottom: 8px; color: #748b56; font-size: 24px; line-height: 1.2; }
@media (min-width: 820px) {
  .field-sheet { padding: 48px 52px 28px; }
  .field-sheet__heading { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: end; gap: 70px; margin-bottom: 40px; }
  .field-sheet h2 { max-width: 420px; }
  .field-table thead th:first-child { width: 22%; }
  .field-table tbody th { font-size: 19px; }
  .field-table__glyph { display: inline-block; width: 45px; margin: 0; vertical-align: middle; }
  .field-table td { padding-right: 28px; }
}

/* 三条独立记录轨道，无先后流程含义 */
.record-tracks { padding-block: 84px; display: grid; gap: 38px; }
.record-tracks__heading > p:last-child { margin-top: 22px; color: var(--muted); font-size: 14px; }
.record-tracks__heading h2 br { display: none; }
.record-track { border-left: 2px solid #4e7040; padding: 4px 0 5px 24px; }
.record-track + .record-track { margin-top: 31px; }
.record-track dt { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; margin-bottom: 13px; font-size: 18px; font-weight: 600; }
.record-track__type { font-size: 11px; letter-spacing: .1em; padding: 3px 9px; border: 1px solid #38513b; border-radius: 4px; color: #b8d2a4; font-weight: 400; }
.record-track dd { color: var(--muted); font-size: 14px; }
.record-track:nth-child(2) { border-left-color: #a5d154; }
.record-track:nth-child(3) { border-left-color: #4b8a70; }
@media (min-width: 860px) {
  .record-tracks { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 100px; padding-block: 100px; }
  .record-tracks__heading h2 br { display: initial; }
}

/* 默认展开的三列问答 */
.question-shelf { padding-block: 54px 74px; border-top: 1px solid var(--line); }
.section-heading--compact { margin-bottom: 32px; }
.section-heading--compact > p:last-child { font-size: 14px; margin-top: 16px; }
.question-shelf__items { display: grid; gap: 16px; align-items: start; }
.question-shelf details { min-width: 0; padding: 23px; border-radius: 10px; border: 1px solid #30402e; background: #111a12; }
.question-shelf summary { display: flex; justify-content: space-between; gap: 18px; align-items: start; cursor: pointer; list-style: none; font-size: 16px; font-weight: 550; line-height: 1.7; }
.question-shelf summary::-webkit-details-marker { display: none; }
.question-shelf summary > span { color: var(--accent); flex: 0 0 18px; font-size: 21px; transition: transform .16s; }
.question-shelf details[open] summary > span { transform: rotate(45deg); }
.question-shelf details > p { margin-top: 20px; padding-top: 19px; border-top: 1px solid #293b29; color: #b0bdac; font-size: 14px; }
@media (min-width: 920px) {
  .question-shelf__items { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
}

/* 问答下方的三图媒体架 */
.news-shelf { padding-bottom: 76px; }
.news-shelf__heading { display: flex; align-items: center; gap: 26px; margin-bottom: 30px; }
.news-shelf__line { flex: 1; height: 1px; background: var(--line); }
.news-shelf__items { list-style: none; margin: 0; padding: 0; display: grid; gap: 30px; }
.news-shelf__items li { min-width: 0; }
.news-shelf img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 9px; }
.news-shelf figcaption { margin-top: 17px; color: #dce7d7; font-size: 17px; font-weight: 500; line-height: 1.7; }
@media (min-width: 700px) {
  .news-shelf__items { grid-template-columns: minmax(0, 1.2fr) repeat(2, minmax(0, 1fr)); gap: 24px; }
  .news-shelf figcaption { font-size: 16px; }
}

/* 收尾签名 */
.site-signature { border-top: 1px solid var(--line); padding-block: 28px 34px; display: flex; align-items: center; flex-wrap: wrap; gap: 18px 25px; }
.site-signature img { width: 82px; height: auto; }
.site-signature > p { font-size: 11px; color: #8c9b8e; }
.site-signature__top { display: inline-flex; gap: 18px; align-items: center; min-height: 44px; margin-left: auto; font-size: 12px; color: #c0cfb9; }
@media (max-width: 470px) {
  .site-signature > p { order: 3; flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0s !important; }
}
