/* Chinese typography, preserving the original scene and HUD composition. */
:root {
  --hud: 'PingFang SC', 'Microsoft YaHei', system-ui, sans-serif;
  --display: 'PingFang SC', 'Microsoft YaHei', system-ui, sans-serif;
  --mono: 'SFMono-Regular', Menlo, 'PingFang SC', 'Microsoft YaHei', monospace;
}
.sc-title { font-size: clamp(32px, 5.2vw, 68px); line-height: 1.35; letter-spacing: .1em; }
.sc-kicker, .ld-kicker { letter-spacing: .22em; line-height: 1.6; }
.sc-sub { letter-spacing: .12em; line-height: 1.7; }
.sc-actions { margin-top: 34px; }
.cta { min-height: 70px; letter-spacing: .08em; line-height: 1.5; }
.cta small { line-height: 1.6; letter-spacing: .03em; }
.sc-hints { letter-spacing: .03em; line-height: 1.6; }
.sc-tele { letter-spacing: .06em; }
.ld-status { font-size: 12px; }
.br-t, .br-s, .g-head, .d-grp { letter-spacing: .12em; line-height: 1.5; }
.mb { font-size: 12px; letter-spacing: .08em; white-space: nowrap; }
.cd-n { letter-spacing: .3em; line-height: 1.5; }
.cd-t { line-height: 1.4; letter-spacing: .12em; }
.cd-k { line-height: 1.7; letter-spacing: .08em; }
#caption { font-size: clamp(15px, 1.4vw, 22px); line-height: 1.8; letter-spacing: .04em; text-wrap: pretty; }
.ct-k, .ct-s { letter-spacing: .12em; line-height: 1.7; }
.d-it { grid-template-columns: 10px minmax(0, 1fr) auto; gap: 7px; padding: 8px 5px; }
.d-nm { font-size: 12px; line-height: 1.55; letter-spacing: .02em; overflow-wrap: anywhere; }
.d-nm small { line-height: 1.5; letter-spacing: .02em; }
.d-ds { font-size: 9px; letter-spacing: -.025em; }
.i-k, .i-t, .i-d { line-height: 1.6; letter-spacing: .06em; }
#info p { font-size: 13px; line-height: 1.9; letter-spacing: .02em; }
.dp { gap: clamp(8px, 1.3vh, 15px); }
.dp-hd { gap: 6px; line-height: 1.5; letter-spacing: .08em; }
.dp-id { letter-spacing: 0; }
.dp-st { font-size: 10px; letter-spacing: 0; padding: 3px 5px; }
.dm label { font-size: 10px; line-height: 1.5; letter-spacing: .05em; }
.dr { font-size: 10px; line-height: 1.5; letter-spacing: .03em; gap: 7px; }
.dr b { font-size: clamp(11px, .8vw, 14px); line-height: 1.5; letter-spacing: .01em; }
.sub, .v, .dh-l, .dh-c b { line-height: 1.5; letter-spacing: .03em; }
.dm-log li { font-size: 11px; line-height: 1.65; letter-spacing: .01em; }
.dh-stage b { letter-spacing: .08em; }
.dl-mk { letter-spacing: 0; }
.x-l { letter-spacing: .06em; white-space: nowrap; }
.seg3 button { font-size: 10px; letter-spacing: .01em; }
.seg span { letter-spacing: .05em; }
.r-mk span { letter-spacing: .02em; }
.x-hint { letter-spacing: .02em; line-height: 1.6; }
@media (max-width: 860px) {
  body.free.dash-on #dest { top: auto; left: 12px; right: 12px; bottom: 174px; max-height: 28vh; }
  body.free.dash-on #info { top: 76px; left: 14px; right: 14px; bottom: auto; width: auto; max-height: 32vh; overflow: auto; }
  body.dash-on #caption { width: min(90vw, 720px); }
  body.free.dash-on #modes { left: 50%; right: auto; transform: translateX(-50%); }
  #xdock { padding: 10px 12px; }
  .x-row { gap: 8px; }
  .seg3 { flex-wrap: wrap; gap: 4px; }
  .seg3 button { padding: 0 7px; height: 28px; }
  .r-mk span { font-size: 8px; }
}
@media (max-width: 520px) {
  .sc-inner { width: 96vw; padding: 0 18px; }
  .sc-title { font-size: clamp(30px, 8vw, 40px); letter-spacing: .07em; }
  .sc-sub { font-size: 13px; letter-spacing: .05em; }
  .sc-actions { margin-top: 26px; gap: 12px; }
  .cta { width: min(310px, 100%); justify-content: center; }
  .sc-hints { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 8px; font-size: 10px; }
  .sc-hints span { justify-content: center; gap: 5px; }
  .sc-tele { padding: 0 10px; font-size: 8.5px; gap: 10px; letter-spacing: 0; }
  .cd-t { font-size: clamp(24px, 7vw, 34px); }
  .cd-k { font-size: 10px; }
  .ct-s { font-size: 10px; padding: 0 18px; }
  .mb { padding: 0 10px; }
  .x-row b { min-width: 58px; font-size: 10px; }
  .seg3 button { font-size: 9px; padding: 0 5px; }
  .r-mk span { font-size: 7px; }
}
