
.us-container {
  --us-opportunity: #087a5b;
  --us-opportunity-soft: #eefaf5;
  --us-risk: #bd3d36;
  --us-risk-soft: #fff4f2;
  --us-blue-soft: #f3f5ff;
  width: 100%;
  max-width: 1520px;
  margin: 0 auto;
  padding: 8px 18px 20px;
}
.us-header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; align-items: center; gap: 12px; min-height: 38px; margin-bottom: 8px; }
.us-header > .us-status-strip { justify-self: start; }
.us-language { display: inline-flex; justify-self: end; padding: 1px; border: 1px solid #e2e7f0; border-radius: 6px; background: #f8fafc; white-space: nowrap; }
.us-language a { display: grid; place-items: center; min-height: 24px; padding: 1px 6px; border-radius: 5px; color: #667085; font-size: 10px; font-weight: 700; line-height: 1; text-decoration: none; }
.us-language a[aria-current] { background: #eef1ff; color: #3448c5; box-shadow: inset 0 0 0 1px #d9def7; }
.us-wechat { justify-self: end; }
.us-card { margin-bottom: 6px; padding: 10px 12px; border: 1px solid #e2e7f0; border-radius: var(--radius-card); background: linear-gradient(180deg, #fff 0%, #fefeff 100%); box-shadow: 0 1px 2px rgba(16,24,40,.045), 0 7px 18px rgba(29,41,57,.025); }
.us-status-strip { display: flex; align-items: center; flex-wrap: wrap; gap: 0; min-height: 38px; padding: 4px 6px; border: 1px solid #e2e7f0; border-radius: var(--radius-card); background: linear-gradient(90deg, #fff 0%, #f8fafc 100%); box-shadow: 0 1px 2px rgba(16,24,40,.04); color: var(--muted); font-size: 10px; font-variant-numeric: tabular-nums; }
.us-status-materials { display: inline-flex; align-items: baseline; gap: 3px; padding: 0 7px; white-space: nowrap; }
.us-status-materials small { color: #475467; font-size: 11px; font-weight: 680; }
.us-status-materials b { margin-right: 4px; color: var(--brand); font-size: 11px; font-weight: 760; }
.us-status-primary { display: inline-flex; align-items: center; gap: 5px; min-width: 0; padding: 4px 7px; border-radius: 7px; background: #f4f5ff; box-shadow: inset 0 0 0 1px #e1e4fb; color: #344054; white-space: nowrap; }
.us-status-primary i { width: 6px; height: 6px; border-radius: 50%; background: #12b76a; box-shadow: 0 0 0 2px #d1fadf; }
.us-status-primary time { color: var(--brand); font-size: 10.5px; font-weight: 760; }
.us-status-primary small { color: #667085; font-size: 9px; font-weight: 680; }
.us-status-strip.is-stale .us-status-primary { background: #fffaeb; box-shadow: inset 0 0 0 1px #fedf89; }
.us-status-strip.is-stale .us-status-primary i { background: #f79009; box-shadow: 0 0 0 2px #fef0c7; }
.us-status-strip.is-stale .us-status-primary time, .us-status-strip.is-stale .us-status-primary small { color: #b54708; }
.us-stale { margin-left: auto; color: var(--warning); font-weight: 700; }
.us-index-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-bottom: 6px; }
.us-index-card {
  --index-tint: 102, 112, 133;
  min-width: 0;
  padding: 9px 12px 0;
  border: 1px solid #e2e7f0;
  border-radius: var(--radius-card);
  background: linear-gradient(180deg, rgba(var(--index-tint), .085) 0%, rgba(var(--index-tint), .02) 42%, #fff 78%);
  box-shadow: 0 1px 2px rgba(16,24,40,.045), 0 7px 18px rgba(29,41,57,.025);
  overflow: hidden;
}
.us-index-card.up { --index-tint: 194, 49, 43; }
.us-index-card.down { --index-tint: 15, 130, 88; }
.us-index-name { display: flex; align-items: baseline; gap: 5px; min-width: 0; }
.us-index-name b { min-width: 0; overflow: hidden; color: #101828; font-size: 14px; font-weight: 780; letter-spacing: -.015em; text-overflow: ellipsis; white-space: nowrap; }
.us-index-name small { color: var(--subtle); font-size: 9.5px; font-weight: 640; white-space: nowrap; }
.us-index-tag { flex: 0 0 auto; margin-left: auto; padding: 1px 5px; border-radius: 4px; background: var(--brand-soft); color: var(--brand); font-size: 9px; font-style: normal; font-weight: 760; }
.us-index-price { display: block; margin-top: 2px; color: #0f1729; font-size: 25px; font-weight: 750; font-variant-numeric: tabular-nums; letter-spacing: -.025em; line-height: 1.15; }
.us-index-delta { display: flex; align-items: baseline; gap: 8px; min-height: 16px; color: #667085; font-size: 12.5px; font-weight: 700; font-variant-numeric: tabular-nums; }
.us-index-card.up .us-index-price, .us-index-card.up .us-index-delta { color: var(--positive); }
.us-index-card.down .us-index-price, .us-index-card.down .us-index-delta { color: var(--negative); }
.us-index-spark { display: block; height: 32px; margin: 3px -12px 0; }
.us-index-spark svg { display: block; width: 100%; height: 100%; }
.us-index-spark polyline { fill: none; stroke: rgb(var(--index-tint)); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.6; vector-effect: non-scaling-stroke; }
.us-index-spark polygon { fill: rgba(var(--index-tint), .11); stroke: none; }
.us-index-asof { display: block; min-height: 12px; padding: 2px 0 5px; color: var(--subtle); font-size: 9px; font-variant-numeric: tabular-nums; }
.us-index-empty { grid-column: 1 / -1; margin-top: -2px; color: var(--subtle); font-size: 10px; }
.us-key-view { padding: 0; border-left: 4px solid var(--brand); background: linear-gradient(105deg, var(--us-blue-soft) 0%, #fff 38%, #fff 100%); }
.us-key-view summary b { color: #101828; font-size: 17px; line-height: 1.4; letter-spacing: -.015em; }
.us-key-view .market-brief-copy { padding: 8px 12px; color: #344054; font-size: 12.5px; line-height: 1.65; }
.us-key-view .market-brief-copy p { margin-top: 6px; }
.us-sector-nav { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; margin: 0 12px 9px; padding-top: 7px; border-top: 1px solid var(--line); font-size: 11px; }
.us-sector-nav a { padding: 3px 7px; border: 1px solid #e4e7ec; border-radius: 999px; background: var(--surface-soft); color: #475467; font-weight: 650; text-decoration: none; }
.us-sector-nav a:hover, .us-sector-nav a:focus-visible { border-color: #b8c0ea; background: var(--brand-soft); color: var(--brand); }
.us-section { margin-top: 9px; scroll-margin-top: 8px; }
.us-section > h2, .us-scorecard > h2, .us-footer h2 { margin-bottom: 6px; color: #25324a; font-size: 13px; }
.us-two-column { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 8px; }
.us-narrative-section > h2 { display: flex; align-items: center; gap: 7px; font-size: 13.5px; }
.us-narrative-section > h2::before { width: 8px; height: 8px; border-radius: 3px; content: ''; }
.us-narrative-section.is-opportunity > h2 { color: var(--us-opportunity); }
.us-narrative-section.is-opportunity > h2::before { background: var(--us-opportunity); box-shadow: 0 0 0 3px #d8f3e8; }
.us-narrative-section.is-risk > h2 { color: var(--us-risk); }
.us-narrative-section.is-risk > h2::before { background: var(--us-risk); box-shadow: 0 0 0 3px #fee4e2; }
.us-narrative-card { height: auto; border-top: 2px solid #d0d5dd; }
.us-narrative-section.is-opportunity .us-narrative-card { border-top-color: var(--us-opportunity); background: linear-gradient(180deg, var(--us-opportunity-soft) 0%, #fff 48px); }
.us-narrative-section.is-risk .us-narrative-card { border-top-color: var(--us-risk); background: linear-gradient(180deg, var(--us-risk-soft) 0%, #fff 48px); }
.us-narrative-card h3 { color: #172033; font-size: 13px; line-height: 1.38; }
.us-narrative-card .us-analysis { color: #3c485b; font-size: 12.5px; line-height: 1.62; }
.us-narrative-section.is-opportunity .us-evidence-wrap summary { color: var(--us-opportunity); }
.us-narrative-section.is-risk .us-evidence-wrap summary { color: var(--us-risk); }
.us-sector-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 8px; }
.us-sector-note { margin: -2px 0 6px; color: var(--muted); font-size: 10.5px; line-height: 1.45; }
.us-sector-note b { color: #475467; }
.us-sector-card {
  --sector-tint: 102, 112, 133;
  --sector-heat-alpha: .012;
  min-width: 0;
  padding: 9px 11px 8px;
  border: 1px solid #e1e6ef;
  border-left: 4px solid var(--line-strong);
  border-radius: var(--radius-card);
  background: linear-gradient(rgba(var(--sector-tint), var(--sector-heat-alpha)), rgba(var(--sector-tint), var(--sector-heat-alpha))), var(--surface);
  box-shadow: 0 1px 2px rgba(16,24,40,.04), 0 8px 20px rgba(29,41,57,.025);
  scroll-margin-top: 8px;
}
.us-sector-card.up { --sector-tint: 196, 50, 43; border-left-color: var(--positive); }
.us-sector-card.down { --sector-tint: 22, 133, 91; border-left-color: var(--negative); }
.us-sector-card.neutral { --sector-tint: 102, 112, 133; border-left-color: #98a2b3; }
.us-sector-card.heat-0 { --sector-heat-alpha: .008; }
.us-sector-card.heat-1 { --sector-heat-alpha: .012; }
.us-sector-card.heat-2 { --sector-heat-alpha: .018; }
.us-sector-card.heat-3 { --sector-heat-alpha: .025; }
.us-sector-card.heat-4 { --sector-heat-alpha: .032; }
.us-sector-card.heat-5 { --sector-heat-alpha: .040; }
.us-sector-card.heat-6 { --sector-heat-alpha: .048; }
.us-sector-card.heat-7 { --sector-heat-alpha: .057; }
.us-sector-card.heat-8 { --sector-heat-alpha: .067; }
.us-sector-card.heat-9 { --sector-heat-alpha: .078; }
.us-sector-card.heat-10 { --sector-heat-alpha: .090; }
.us-card-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 25px; margin-bottom: 4px; }
.us-card-head h3 { display: flex; align-items: baseline; gap: 6px; color: #111a2c; font-size: 16px; line-height: 1.25; letter-spacing: -.02em; }
.us-card-head h3 small { display: block; margin-top: 1px; color: var(--muted); font-size: 9.5px; font-weight: 600; letter-spacing: 0; }
.us-sector-emoji { flex: 0 0 auto; font-size: 15px; line-height: 1.25; font-style: normal; }
.us-sector-nav .us-sector-emoji { margin-right: 3px; font-size: 11px; }
.us-badges { display: flex; flex: 0 0 auto; align-items: center; gap: 4px; }
.us-direction { padding: 2px 7px; border-radius: 5px; font-size: 10.5px; font-weight: 720; white-space: nowrap; }
.us-direction.bullish { background: var(--positive-soft); color: #b42318; }
.us-direction.bearish { background: var(--negative-soft); color: #067647; }
.us-direction.neutral, .us-direction.mixed { background: #f2f4f7; color: #475467; }
.us-metrics { display: flex; gap: 12px; color: var(--muted); font-size: 10.5px; }
.us-metrics b { color: #344054; font-size: 11.5px; font-variant-numeric: tabular-nums; }
.us-sector-etf { display: grid; grid-template-columns: auto 38px minmax(0, 1fr) auto; align-items: center; gap: 5px; margin-top: 6px; padding: 5px 6px; border: 1px solid #d9e0f2; border-radius: 6px; background: linear-gradient(90deg, var(--us-blue-soft), #f9faff); color: #475467; font-size: 10.5px; }
.us-sector-etf-label { color: var(--brand); font-size: 10px; font-weight: 760; white-space: nowrap; }
.us-sector-etf > b { color: #25324a; font-size: 11.5px; font-variant-numeric: tabular-nums; }
.us-sector-etf-name { min-width: 0; overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.us-sector-etf-call { padding-left: 6px; border-left: 1px solid var(--line); color: var(--subtle); font-size: 10px; white-space: nowrap; }
.us-sector-etf-call b { color: #667085; }
.us-3l-glossary { margin: -2px 0 6px; color: #667085; font-size: 10px; line-height: 1.45; overflow-wrap: anywhere; }
.us-3l-shadow { min-width: 0; margin-top: 4px; padding: 5px 6px; border: 1px dashed #c3cbe5; border-radius: 6px; background: linear-gradient(135deg, #f7f8ff 0%, #fbfcff 100%); color: #475467; }
.us-3l-shadow[data-status="confirmed"] { border-color: #a6d8c6; background: #f6fcf9; }
.us-3l-shadow[data-status="invalid"] { border-color: #e8c5c2; background: #fffafa; }
.us-3l-head { display: flex; align-items: center; justify-content: space-between; gap: 7px; min-width: 0; margin-bottom: 4px; font-size: 9.5px; }
.us-3l-head b { color: var(--brand); font-size: 10px; white-space: nowrap; }
.us-3l-head em { min-width: 0; overflow: hidden; color: var(--muted); font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.us-3l-axes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; min-width: 0; }
.us-3l-axis { display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 1px 4px; min-width: 0; padding: 4px 5px; border-radius: 4px; background: rgba(242,244,247,.8); }
.us-3l-axis small { color: var(--subtle); font-size: 8.5px; font-weight: 750; }
.us-3l-axis b { min-width: 0; overflow: hidden; color: #344054; font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.us-3l-axis em { grid-column: 1 / -1; min-width: 0; color: #667085; font-size: 8.5px; font-style: normal; line-height: 1.3; overflow-wrap: anywhere; }
.us-pick { margin-top: 6px; padding: 6px 7px; border-radius: 6px; background: var(--surface-soft); color: #475467; font-size: 12px; }
.us-pick span { margin-right: 6px; color: var(--subtle); font-size: 10px; font-weight: 700; }
.us-pick b { color: var(--brand); }
.us-pick time { margin-left: 4px; color: var(--subtle); font-size: 10px; }
.us-stock-list { margin-top: 6px; border: 1px solid #e2e7ef; border-radius: 7px; background: rgba(255,255,255,.82); overflow: hidden; }
.us-stock-columns, .us-stock-row { display: grid; grid-template-columns: minmax(125px, 1fr) 50px repeat(3, 50px) 58px 68px; align-items: center; column-gap: 4px; }
.us-stock-columns { padding: 4px 6px; background: #f6f7fa; color: var(--subtle); font-size: 9px; font-weight: 750; letter-spacing: .03em; text-transform: uppercase; }
.us-stock-columns span:nth-child(n+2) { text-align: right; }
.us-stock-columns span:last-child { text-align: center; }
.us-stock-row { min-height: 29px; padding: 3px 6px; border-top: 1px solid #edf0f4; color: #344054; font-size: 10.5px; font-variant-numeric: tabular-nums; }
.us-stock-row:nth-child(odd) { background: rgba(247,249,252,.72); }
.us-stock-row.is-pick { background: var(--brand-soft); box-shadow: inset 2px 0 0 var(--brand); }
.us-stock-identity { display: flex; align-items: center; min-width: 0; gap: 5px; }
.us-stock-symbol { flex: 0 0 39px; color: #25324a; font-size: 11px; }
.us-stock-row.is-pick .us-stock-symbol { color: var(--brand); }
.us-stock-name { min-width: 0; overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.us-stock-close, .us-stock-change, .us-stock-adv { text-align: right; white-space: nowrap; }
.us-stock-adv { color: var(--muted); }
.us-stock-change.up { color: #b42318; }
.us-stock-change.down { color: #067647; }
.us-stock-change.flat { color: #667085; }
.us-stock-row .sector-signal { flex: 0 0 auto; padding: 1px 5px; font-size: 9px; }
.us-stock-row .signal-dot { display: none; }
.us-stock-trend { display: grid; place-items: center; min-width: 0; }
.us-sparkline { width: 100%; height: 19px; overflow: visible; }
.us-sparkline polyline { fill: none; stroke: #667085; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; vector-effect: non-scaling-stroke; }
.us-sparkline.up polyline { stroke: var(--positive); }
.us-sparkline.down polyline { stroke: var(--negative); }
.us-sparkline-empty { color: var(--subtle); }
.us-stock-basis { padding: 3px 6px; border-top: 1px solid #e7eaf0; background: #fafbfc; color: var(--subtle); font-size: 9px; text-align: right; }
.us-stock-basis time { color: #475467; font-variant-numeric: tabular-nums; }
.us-analysis { margin-top: 6px; color: #344054; font-size: 12px; line-height: 1.55; }
.us-en-badge { display: inline-block; margin-left: 3px; padding: 1px 4px; border: 1px solid #b8c0ea; border-radius: 4px; color: var(--brand); font-size: 9px; font-weight: 800; line-height: 1.25; vertical-align: middle; }
.us-evidence-wrap { margin-top: 5px; color: var(--muted); font-size: 10px; }
.us-evidence-wrap summary { width: max-content; color: var(--brand); font-weight: 700; cursor: pointer; }
.us-evidence { margin: 4px 0 0; padding-left: 16px; }
.us-evidence li { margin-top: 3px; line-height: 1.45; }
.us-evidence a { color: #475467; text-decoration: none; }
.us-evidence a:hover { color: var(--brand); text-decoration: underline; }
.us-evidence-unlinked { color: var(--subtle); }
.us-empty { margin-top: 5px; color: var(--subtle); font-size: 10px; }
.us-scorecard { margin-top: 9px; }
.us-scorecard dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; }
.us-scorecard dl > div { display: flex; justify-content: space-between; gap: 8px; padding: 5px 7px; border-radius: 5px; background: var(--surface-soft); }
.us-scorecard dt { color: var(--muted); font-size: 10px; }
.us-scorecard dd { color: #25324a; font-size: 10.5px; font-weight: 700; font-variant-numeric: tabular-nums; text-align: right; }
.us-footer { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 10px; padding-top: 9px; border-top: 1px solid var(--line); color: var(--muted); font-size: 10px; line-height: 1.55; }
.us-footer section + section { margin-top: 0; }
.us-footer b { color: #344054; }
.us-placeholder { width: min(560px, calc(100% - 28px)); margin: 15vh auto 0; padding: 28px; border: 1px solid var(--line); border-radius: var(--radius-card); background: #fff; box-shadow: var(--shadow); text-align: center; }
.us-placeholder h1 { margin: 8px 0 3px; font-size: 22px; }
.us-placeholder p { color: var(--muted); }
.us-placeholder a { display: inline-block; margin-top: 18px; color: var(--brand); font-size: 12px; font-weight: 700; text-decoration: none; }
@media (max-width: 1180px) {
  .us-container { padding-inline: 14px; }
}
@media (max-width: 1100px) {
  .us-sector-grid { grid-template-columns: 1fr; }
  .us-scorecard dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1100px) and (min-width: 761px) {
  .us-header { grid-template-columns: minmax(0, 1fr) auto auto; gap: 6px; }
  .us-header > .brand-block { grid-column: 1 / -1; grid-row: 1; }
  .us-header > .us-status-strip { grid-column: 1; grid-row: 2; justify-self: stretch; overflow: hidden; }
  .us-language { grid-column: 2; grid-row: 2; }
  .us-wechat { grid-column: 3; grid-row: 2; }
}
@media (max-width: 760px) {
  .us-container {
    padding-top: 6px;
    padding-right: max(10px, env(safe-area-inset-right));
    padding-bottom: max(20px, env(safe-area-inset-bottom));
    padding-left: max(10px, env(safe-area-inset-left));
  }
  .us-header { grid-template-columns: auto auto minmax(0, 1fr) auto; align-items: center; gap: 5px; margin-bottom: 7px; }
  .us-header > .brand-block { grid-column: 1; grid-row: 1; min-width: 0; }
  .us-language { grid-column: 2; grid-row: 1; }
  .us-wechat { grid-column: 4; grid-row: 1; justify-self: end; width: 28px; padding: 2px 3px; }
  .us-wechat .wechat-label { display: none; }
  .us-header > .us-status-strip { grid-column: 1 / -1; grid-row: 2; justify-self: stretch; width: 100%; }
  .us-status-strip { height: 33px; min-height: 33px; flex-wrap: nowrap; overflow: hidden; }
  .us-status-strip > .status-block-icon { display: none; }
  .us-status-materials { flex: 0 0 auto; padding-right: 4px; padding-left: 1px; }
  .us-status-primary { flex: 0 1 auto; padding-right: 6px; padding-left: 6px; }
  .us-status-primary small { display: none; }
  .us-stale { display: none; }
  /* 三张卡在 390px 上各只剩约 120px：点位降到 16px 才放得下「51,594.14」这种
     五位带千分位的数（实测 17px 要 101px，可用宽只有 105px），涨跌两格改上下
     堆叠——并排会被挤成两行文字互叠。道指再涨一个数量级还得再降一档，见 520px 那节 */
  .us-index-strip { gap: 6px; }
  .us-index-card { padding: 7px 7px 0; }
  .us-index-name { flex-wrap: wrap; gap: 2px 4px; }
  .us-index-name b { font-size: 12px; }
  .us-index-name small { display: none; }
  .us-index-tag { margin-left: 0; font-size: 8.5px; }
  .us-index-price { overflow: hidden; font-size: 16px; white-space: nowrap; }
  .us-index-delta { flex-direction: column; gap: 0; min-height: 28px; font-size: 11px; }
  .us-index-spark { height: 26px; margin-right: -7px; margin-left: -7px; }
  .us-key-view summary b { font-size: 16px; }
  .us-sector-nav { font-size: 12px; }
  .us-two-column { grid-template-columns: 1fr; gap: 0; }
  .us-sector-card { padding: 8px 9px 7px; }
  .us-sector-note { font-size: 12px; }
  .us-card-head h3 { font-size: 16px; }
  .us-card-head h3 small { font-size: 10px; }
  .us-direction { font-size: 12px; }
  .us-sector-etf { grid-template-columns: auto 42px minmax(0, 1fr); font-size: 12px; }
  .us-sector-etf-label, .us-sector-etf > b { font-size: 12px; }
  .us-sector-etf-call { grid-column: 1 / -1; padding-top: 4px; padding-left: 0; border-top: 1px solid var(--line); border-left: 0; font-size: 11px; }
  .us-3l-glossary { font-size: 11px; }
  .us-3l-head { font-size: 10px; }
  .us-3l-head b { font-size: 11px; }
  .us-3l-axis small, .us-3l-axis em { font-size: 9.5px; }
  .us-3l-axis b { font-size: 10.5px; }
  .us-analysis, .us-key-view .market-brief-copy { font-size: 13px; }
  .us-evidence-wrap, .us-evidence-wrap summary { font-size: 12px; }
  .us-stock-columns, .us-stock-row { grid-template-columns: minmax(68px, 1.2fr) 43px repeat(3, minmax(36px, .65fr)) 42px 48px; column-gap: 2px; }
  .us-stock-columns { padding: 4px; font-size: 8.5px; }
  .us-stock-columns span:nth-child(n+2) { text-align: center; }
  .us-stock-row { min-height: 29px; padding: 3px 4px; font-size: 10px; }
  .us-stock-identity { gap: 3px; }
  .us-stock-symbol { flex-basis: auto; font-size: 10.5px; }
  .us-stock-name { display: none; }
  .us-stock-close, .us-stock-change, .us-stock-adv { text-align: center; }
  .us-stock-row .sector-signal { flex: 0 0 6px; width: 6px; height: 6px; margin-left: auto; padding: 0; border-radius: 50%; font-size: 0; }
  .us-stock-row .signal-dot { display: block; width: 100%; height: 100%; }
  .us-stock-basis { font-size: 10px; }
  .us-scorecard dl { grid-template-columns: 1fr; }
  .us-footer { grid-template-columns: 1fr; gap: 8px; font-size: 10px; text-align: left; }
}
@media (max-width: 520px) {
  /* 360px 上每张卡只剩约 109px，16px 的「51,594.14」正好卡满可用宽 */
  .us-index-price { font-size: 15px; }
  .us-3l-axes { grid-template-columns: 1fr; }
  .us-3l-axis { grid-template-columns: 42px 70px minmax(0, 1fr); align-items: center; }
  .us-3l-axis em { grid-column: auto; }
}
