/* Screen-only type scale overrides legacy module rules; printed documents are unchanged. */
@media screen {
  :root {
    --ui-font: "Microsoft YaHei", "Microsoft JhengHei", "PingFang TC", "Noto Sans TC", sans-serif;
    --ui-body-size: 14px;
    --ui-caption-size: 13px;
  }
  body { font-family:var(--ui-font); font-size:var(--ui-body-size); font-weight:400; line-height:1.5; }
  button, input, select, textarea { font-family:var(--ui-font) !important; line-height:1.5; }
  input, select, textarea { font-size:var(--ui-body-size) !important; font-weight:400 !important; }
  label { font-size:var(--ui-body-size) !important; font-weight:500 !important; }
  button, summary { font-size:var(--ui-body-size); font-weight:500 !important; }
  h1, .hero h1 { font-size:20px !important; font-weight:600 !important; line-height:1.4; }
  h2, h3, h4, .panel-title h2, .wh-heading h2 { font-size:16px !important; font-weight:600 !important; line-height:1.5; }
  strong, b { font-weight:600 !important; }
  .nav-button, .nav-group-toggle, .nav-sub-button { font-size:14px !important; }
  .sidebar-brand strong { font-size:16px; }
  table th, table td { font-size:14px !important; line-height:1.5 !important; }
  table th { font-weight:600 !important; }
  table td { font-weight:400 !important; }
  table td button { font-size:14px !important; }
  small, .small, .eyebrow, .muted, .meta, .badge,
  .sync-brief, .sync-details, .global-sync-title, .global-sync-message,
  .account-menu > summary, .bank-ledger-message, .bank-notice-time,
  .bank-review-body .confirmation, .bank-company-summary, .bank-dirty,
  .bank-state, .batch-count, .bank-ledger-table small,
  .wh-meta, .wh-tag, .wh-unit, .wh-quantity-caption,
  .mobile-record dt, .responsive-records td::before,
  .report-quality, .report-chart-heading p, .report-chart details,
  #salesReportsPage #reportStatus { font-size:var(--ui-caption-size) !important; font-weight:400 !important; line-height:1.5; }
  .bank-ledger-totals, .bank-review-body .identity > span,
  .bank-review-body summary, .batch-selection-count, .batch-target,
  .bank-review-body .batch-warning { font-size:14px !important; }
  .bank-party-link, .bank-money, .batch-target, .batch-selection-count { font-weight:600 !important; }
  .bank-col-money, .batch-money, .bank-review-amount, .report-kpis strong { font-variant-numeric:tabular-nums; }
  .bank-review-amount, .report-kpis strong, .sync-metrics dd,
  .fx-conversion, .po-list-summary strong { font-size:22px !important; font-weight:600 !important; line-height:1.4; }
  .wh-item-info, .wh-line .wh-line-identity { font-size:14px !important; }
  .bank-heading-mobile { display:none; }
  .account-menu-identity { margin:0; padding:8px; font-size:13px; overflow-wrap:anywhere; }
  @media(max-width:600px) {
    .hero .account-menu { width:110px; flex:0 0 110px; }
    .account-menu > summary .account-role { display:none; }
    .account-menu > summary .account-name { display:inline-block; max-width:calc(100% - 16px); vertical-align:bottom; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .account-menu > summary { white-space:nowrap; }
    .bank-heading-full { display:none; }
    .bank-heading-mobile { display:inline; }
    input:not([type=checkbox]):not([type=radio]), select, textarea { font-size:16px !important; }
    .bank-ledger-table .bank-col-money { width:30%; }
    .bank-ledger-table .bank-col-party { width:27%; }
    .bank-ledger-table .bank-col-date { width:24%; }
  }
}
