/* The reading area sits below the glass trajectory so the left-hand exit
   remains visible instead of being hidden by a full-height dark overlay. */
.scene-shade{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 15% 82%,rgba(15,10,20,.8),rgba(15,10,20,.32) 24%,transparent 55%)}
@media(min-width:701px){
  .chapter{align-items:flex-end;padding-bottom:114px}
  .copy{margin-left:5.6%;width:31%;max-width:400px}
  .eyebrow{margin-bottom:15px;font-size:11px}
  h1,h2{font-size:clamp(32px,3.4vw,52px);line-height:1.12;margin-bottom:18px}
  .description{font-size:12px;margin-bottom:18px;letter-spacing:.04em}
  .action{padding:10px 0;font-size:12px;min-width:170px}
  .quiet{margin-top:10px}
}
@media(max-width:700px){
  .scene-shade{background:linear-gradient(180deg,rgba(15,10,20,.3),transparent 16%,transparent 42%,rgba(25,18,31,.78) 66%,#211a27 88%)}
}

/* Same centre-segment travel per viewport as the reference's 14-pane Work
   section, adapted to six chapters (including its FXScroll viewport overlap). */
#scroll-track{height:542.3077svh}
@media(max-width:700px){#scroll-track{height:340.3846svh}}

/* A1 brand typography, resolved from the installed fonts for this local preview.
   No font files are copied or distributed. Stage, camera and glass layout stay
   identical to the approved helix. */
@font-face{font-family:"MC Display";src:local("BodoniSvtyTwoITCTT-Book"),local("Bodoni 72 Book");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"MC Han Light";src:local("SourceHanSansCN-ExtraLight"),local("思源黑体 CN ExtraLight");font-style:normal;font-weight:200;font-display:swap}
@font-face{font-family:"MC Han Text";src:local("SourceHanSansCN-Regular"),local("思源黑体 CN Regular");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"MC Auxiliary";src:local("Avenir-Book"),local("Avenir Book");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"MC Meta";src:local("Avenir-Medium"),local("Avenir Medium");font-style:normal;font-weight:500;font-display:swap}
:root{
  --font-display:"MC Display","Bodoni 72",Didot,"Times New Roman",serif;
  --font-title:"MC Han Light","PingFang SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;
  --font-body:"MC Auxiliary","MC Han Text",Avenir,"PingFang SC","Microsoft YaHei",Arial,sans-serif;
  --font-meta:"MC Meta","MC Han Text",Avenir,"PingFang SC","Microsoft YaHei",Arial,sans-serif;
  font-family:var(--font-body);font-weight:400;font-synthesis:none;
}
.brand,.loader-wordmark{font-family:var(--font-display);font-weight:400;letter-spacing:-.035em}
.brand span,.loader-wordmark span{font-family:"MC Han Text";font-weight:400}
h1,h2,.interaction-dialog__title,.interaction-dialog h3{
  font-family:var(--font-title);font-weight:200;font-style:normal;letter-spacing:0;
}
h1:lang(en),h1 em:lang(en),h2:lang(en),h2 em:lang(en){font-family:var(--font-display);font-weight:400;font-style:normal;letter-spacing:-.02em}
.chapter h2 em{font-weight:inherit}
.description,.action,.quiet,.tools,.chapter-nav span,.study-note,footer button,
dialog label,dialog p,dialog textarea,dialog input,.interaction-search__label,
.interaction-consult__label,.interaction-button{
  font-family:var(--font-body);letter-spacing:0;
}
.eyebrow,.edition,.counter,.loader-kicker,.loader-top>span:last-child,#load-state{
  font-family:var(--font-meta);font-weight:500;letter-spacing:.15em;
}
.counter b{font-family:var(--font-meta);font-weight:500}
.loader-top,.loader-bottom,#load-stage,#load-recovery{font-family:var(--font-body);letter-spacing:0}
.copy-trigger{font-synthesis:none}

/* Keep the active chapter name readable, including on narrow screens. */
.chapter-nav button > span:not(.touch-ink){
  display:block;
  right:calc(100% + 12px);
  top:50%;
  width:max-content;
  max-width:none;
  font-family:var(--font-meta,var(--font-body));
  font-weight:500;
  line-height:1.5;
  letter-spacing:0;
  white-space:nowrap;
  word-break:keep-all;
  overflow:visible;
  visibility:hidden;
  opacity:0;
  transform:translate(4px,-50%);
  text-shadow:0 1px 6px #110b19;
}
.chapter-nav button[aria-current="step"] > span:not(.touch-ink),
.chapter-nav button:hover > span:not(.touch-ink),
.chapter-nav button:focus-visible > span:not(.touch-ink){
  visibility:visible;
  opacity:1;
  transform:translateY(-50%);
}

/* Keep small chapter and dialog labels legible. */
.eyebrow{font-size:11px}
/* The label extends beyond the dot button. Its local text-lens filter would
   clip the first glyph; retain the dot's native hover/focus feedback instead. */
.chapter-nav button.touch-surface{filter:none!important}
.chapter-nav .touch-ink{display:none!important}

/* Contact uses the existing header rhythm, with no overlay over the hero. */
.wechat-entry{position:absolute;right:5.6%;top:78px;pointer-events:auto;display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #a58bac66;font-family:var(--font-meta);font-size:12px;color:#e6cfdf;white-space:nowrap}
.wechat-entry > span:first-child{font-size:11px;color:#c2b0c6}
.wechat-entry:hover{color:#fff1df;border-color:#e6cfdf}
#wechat-dialog .wechat-id{font-family:var(--font-body);font-size:clamp(27px,5vw,36px);letter-spacing:.035em;color:#f0d8e9;margin:30px 0;user-select:all}
.wechat-status{min-height:2.5em;color:var(--muted);font-size:12px}
.contact-inline{display:block;width:fit-content;padding:12px 0;color:#e6cfdf;font-family:var(--font-body);font-size:13px;text-align:left;border-bottom:1px solid #a58bac66}
.catalogue-native-filter{display:none!important}
.catalogue-tabs{display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid #a58bac44;margin:10px 0 0}
.catalogue-tabs button{padding:12px 0;border-bottom:1px solid transparent;border-radius:0;color:var(--ui-muted);font-family:var(--font-body);font-size:13px}
.catalogue-tabs button[aria-pressed="true"]{color:var(--ui-ink);border-color:#dac0d3}
.catalogue-contact{justify-self:start;margin:28px 0 0;padding:12px 0;border-top:1px solid #a58bac44;font-size:13px;color:#e6cfdf}
.catalogue-group-title{display:flex;align-items:baseline;gap:16px;margin:28px 0 7px!important;font-size:23px!important}
.catalogue-group-count{font-family:var(--font-meta);font-size:11px;color:var(--ui-muted)}
.catalogue-group-note{margin:0 0 18px;font-size:12px;color:var(--ui-muted)}
.catalogue-product-summary{min-width:0;display:block}
.catalogue-product-summary .interaction-result__name{display:block;line-height:1.6}
.catalogue-product-theme{display:block;margin-top:6px;font-family:var(--font-body);font-size:12px;color:var(--ui-muted)}
.catalogue-product-arrow{font-size:20px;color:#ceb3c9}
[data-dialog="search"] .interaction-result{grid-template-columns:28px minmax(0,1fr) 20px;gap:10px 14px;min-block-size:88px;text-align:left}
@media(max-width:700px){
 .wechat-entry{top:66px;right:25px;font-size:11px;gap:9px}
 .catalogue-tabs{gap:20px}.catalogue-tabs button{font-size:12px}
 [data-dialog="search"] .interaction-result{grid-template-columns:22px minmax(0,1fr) 16px;gap:10px}
 .catalogue-group-title{font-size:21px!important}
}

/* Shared outline icons keep the same geometry on iOS, Android and desktop. */
.mc-icon{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.12em;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.action .mc-icon{width:22px;height:22px}.close .mc-icon{width:20px;height:20px}
button{-webkit-appearance:none;appearance:none}button,input,textarea{-webkit-tap-highlight-color:transparent}
.site-credits{display:inline-block;margin-top:14px;font-size:11px;color:var(--muted);text-underline-offset:4px}
