.wa-mobile-only { display: none; }
@media (max-width: 820px) {
  body[data-mobile-frame] .wa-mobile-only { display: block; }
  body[data-mobile-frame] .wa-mobile-only[hidden] { display: none; }
  body[data-mobile-frame] :is(main, .wa-page, .wa-shell) { min-width: 0; }
  body[data-mobile-frame] .hero { min-height: 0; padding-top: 24px; padding-bottom: 22px; }
  body[data-mobile-frame] .hero-content { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 0; }
  body[data-mobile-frame] .hero-copy { padding-bottom: 0; }
  body[data-mobile-frame] .hero h1 { font-size: clamp(28px, 7.2vw, 36px); line-height: 1.45; margin-top: 14px; text-wrap: balance; }
  body[data-mobile-frame] .hero h1 > span { white-space: normal; }
  body[data-mobile-frame] .hero-description { margin-top: 14px; font-size: 16px; line-height: 1.75; max-width: none; color: #b9bab3; }
  body[data-mobile-frame] .hero-actions { margin-top: 18px; gap: 14px; }
  body[data-mobile-frame] .hero-actions > a { min-height: 44px; font-size: 14px; }
  body[data-mobile-frame] .hero-visual { width: 100%; height: 220px; max-width: 520px; margin: 12px auto 0; }
  body[data-mobile-frame] .hero-foot { display: none; }
  body[data-mobile-frame] .hero :is(.eyebrow, .scene-caption, .scene-coordinate) { font-size: 12px; line-height: 1.6; }
  body[data-mobile-frame] .scene-footer { bottom: 0; left: 0; right: 0; gap: 8px; }
  body[data-mobile-frame] .scene-tabs { gap: 12px; }
  body[data-mobile-frame] :is(.scene-tabs button, .motion-toggle) { min-height: 44px; font-size: 12px; }
  body[data-mobile-frame] .hero-ecology-labels { font-size: 11px; inset: 19% 1% 27%; }
  body[data-mobile-frame] :is(.research-breadcrumb, .union-breadcrumb, .post-breadcrumb, .capital-breadcrumb, .nst-breadcrumb) { display: none; }
  body[data-mobile-frame] main :is(.section-space, .dz-section, .mine-update) { padding-block: 48px; }
  body[data-mobile-frame] main .section-head { margin-bottom: 26px; }
  body[data-mobile-frame] main .section-head h2 { font-size: 28px; line-height: 1.5; text-wrap: balance; }
  body[data-mobile-frame] main :is(h2, h3, h4) { text-wrap: balance; overflow-wrap: break-word; }
  body[data-mobile-frame] main :is(dt, dd) { font-size: 14px; line-height: 1.8; }
  body[data-mobile-frame] main :is(.eyebrow, .mono, [class$="-en"]) { font-size: 12px; }
  body[data-mobile-frame] main :is(a.link, a.primary) { min-height: 44px; font-size: 14px; }
  body[data-mobile-frame] main :is(.asset-card p, .research-row p, .disclosure-row, .research-intro p) { font-size: 16px; }
  body[data-mobile-frame] main .asset-card h3 span { font-size: 12px; }
  body[data-mobile-frame] :is(.nd-hero, .ah-hero, .rl-hero, .dz-hero-copy) h1 { font-size: clamp(28px, 7.2vw, 34px); line-height: 1.45; text-wrap: balance; }

  body[data-mobile-path="/zh/"] .hero-actions { display: none; }
  body[data-mobile-frame] .wa-desktop-copy { display: none; }
  body[data-mobile-path="/zh/"] .hero-visual { height: 190px; }
  body[data-mobile-path="/zh/post-investment/"] .hero-visual { height: 160px; }
  .wa-mobile-home-actions { margin-top: 18px; }
  .wa-mobile-primary-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .wa-mobile-primary-actions a { display: flex; justify-content: space-between; align-items: center; min-height: 48px; padding: 11px 14px; color: #d5c49d; border: 1px solid #66583e; font-size: 15px; }
  .wa-mobile-primary-actions a:first-child { background: #b49a64; border-color: #b49a64; color: #121517; }
  .wa-mobile-asset-shortcuts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 12px; border-block: 1px solid #393a32; }
  .wa-mobile-asset-shortcuts a { display: flex; flex-direction: column; justify-content: center; gap: 5px; min-height: 64px; padding: 10px 6px; color: #e2dfd5; font-size: 15px; }
  .wa-mobile-asset-shortcuts a + a { border-left: 1px solid #393a32; padding-left: 12px; }
  .wa-mobile-asset-shortcuts strong { font-weight: 400; }
  .wa-mobile-asset-shortcuts span { color: #b7b1a0; font-size: 12px; }
  body[data-mobile-path="/zh/"] #site-directory { padding-block: 40px; }
  body[data-mobile-path="/zh/"] #site-directory .directory-grid { display: none; }
  body[data-mobile-path="/zh/"] #site-directory .directory-intro { font-size: 14px; }
  body[data-mobile-path="/zh/"] #site-directory .directory-heading { margin-bottom: 20px; }
  body[data-mobile-path="/zh/"] .wa-mobile-column-directory { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
  .wa-mobile-column-directory :is(a, button) { display: flex; align-items: center; justify-content: space-between; min-height: 52px; border: 0; border-bottom: 1px solid #393c35; padding: 12px 0; color: #d2bf95; background: transparent; font: inherit; font-size: 16px; }
  .wa-mobile-column-directory button { grid-column: 1 / -1; font-size: 14px; margin-top: 8px; }

  .wa-mobile-journey { padding: 20px 0; background: #ede9df; color: #202423; border-block: 1px solid #d4ccba; }
  .wa-mobile-journey p { margin: 0 0 12px; font-size: 14px !important; line-height: 1.7; color: #786136; }
  .wa-mobile-journey p span { display: inline; margin-left: 12px; color: #62655d; font-size: 12px; }
  .wa-mobile-journey ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; gap: 8px; margin: 0; padding: 0; }
  .wa-mobile-journey li { min-width: 0; }
  .wa-mobile-journey :is(a, .wa-mobile-journey-unavailable) { display: flex; flex-direction: column; gap: 4px; min-height: 66px; border-top: 1px solid #bdb6a5; padding: 9px 5px; color: #555b54; font-size: 14px; text-decoration: none; }
  .wa-mobile-journey strong { font-weight: 400; }
  .wa-mobile-journey a[aria-current="step"] { color: #786136; border-top: 2px solid #8d713e; background: #d6c8a730; }
  .wa-mobile-journey-number { font-size: 12px; font-variant-numeric: tabular-nums; color: #786136; }
  .wa-mobile-journey small { font-size: 12px; color: #66695f; }
  .wa-mobile-journey-unavailable { background: #dedbd330; }
  .wa-mobile-category-status { margin-top: 16px; padding-block: 10px; border-block: 1px solid #3c3d33; font-size: 14px !important; color: #d2bf95; }

  body[data-mobile-frame] #wa-mobile-panel.wa-mobile-dialog[open][data-pane="chapters"],
  body[data-mobile-frame] #wa-mobile-panel.wa-mobile-dialog[open][data-pane="share"] { inset: auto 0 0; height: auto; max-height: min(78dvh, 680px); border-radius: 18px 18px 0 0; border-top: 1px solid #786136; }
  #wa-mobile-panel[data-pane="share"] .wa-mobile-panel-content { max-height: 58dvh; }
  #wa-mobile-panel :is(.research-menu-en, .capital-menu-en) { display: none; }
  #wa-mobile-panel .wa-mobile-languages summary { display: list-item; min-height: 44px; padding: 12px 0; font-size: 15px; color: #d2bf95; cursor: pointer; }
  #wa-mobile-panel #mobile-nav a > span { margin-top: 3px; font-size: 14px; line-height: 1.6; }
  #wa-mobile-panel #mobile-nav [id^="mobile-"][id$="-submenu"] a { padding-block: 10px; }
  #wa-mobile-panel #mobile-nav :is(.research-menu-group, .capital-menu-group) { margin-block: 10px; }
  #wa-mobile-panel #mobile-nav :is(.post-version-link, .post-group-link) > span { display: none; }
  #wa-mobile-panel .wa-mobile-chapter-link[aria-current="location"] { color: #d2bf95; background: #b49a6415; border-left: 2px solid #b49a64; padding-left: 12px; }
  .wa-mobile-reading-progress { position: fixed; top: calc(68px + env(safe-area-inset-top, 0px)); left: 0; right: 0; height: 2px; z-index: 84; pointer-events: none; background: #b49a641c; }
  .wa-mobile-reading-progress span { display: block; height: 100%; width: var(--reading-progress, 0%); background: #b49a64; }
  #wa-mobile-frame [data-mobile-open="chapters"][data-position]::after { content: attr(data-position); position: absolute; top: 5px; right: 12%; font-size: 10px; padding: 1px 3px; color: #d2bf95; background: #111416; }
  body.wa-mobile-panel-open .wa-mobile-reading-progress { display: none; }
  body[data-mobile-frame] :is(.wa-mobile-only a, .wa-mobile-only button):focus-visible { outline: 2px solid #b49a64; outline-offset: 3px; }
}
@media (max-width: 360px) {
  body[data-mobile-frame] .hero h1 { font-size: 27px; }
  body[data-mobile-frame] :is(.scene-tabs button, .motion-toggle) { font-size: 12px; }
  body[data-mobile-frame] .scene-tabs { gap: 8px; }
  .wa-mobile-primary-actions a { padding-inline: 10px; }
  .wa-mobile-asset-shortcuts a { font-size: 14px; }
}
@media print { .wa-mobile-only { display: none !important; } }
