/**
 * 大字号 / 系统字体放大适配（老年机、无障碍）
 * 原则：不阻止系统放大，让布局自动换行/缩放，避免逐字竖排与金额溢出
 */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.app-body {
  overflow-x: hidden;
}

/* 中文说明文案：保持词组完整，避免一字一行 */
.app-body :where(
  p,
  small,
  span:not([class*="__amt"]):not([class*="__value"]):not([class*="fi-amt"]),
  li,
  label,
  h1,
  h2,
  h3,
  h4,
  strong:not([class*="__amt"]):not([class*="__value"])
) {
  word-break: keep-all;
  overflow-wrap: break-word;
}

/* 金额类：单行展示，禁止滚动条（Windows 上 overflow-x:auto 会露出上下箭头） */
.app-body :where(
  [class*="__amt"],
  [class*="__value"],
  [class*="__amount"],
  [class*="__balance"],
  [class*="__amt-wrap"],
  .fi-amt,
  .fc-hero__amount
) {
  max-width: 100%;
  font-variant-numeric: tabular-nums;
  word-break: keep-all;
  overflow-wrap: anywhere;
  overflow: hidden;
  scrollbar-width: none;
}

/* 横向卡片：空间不足时允许换行 */
.app-body :where(
  [class*="-banner"],
  .fc-stats,
  .hero-card__main,
  .finance-card
) {
  min-width: 0;
}
