/* 测试1 · 游资数据（2026-10-08）。红涨绿跌沿用 .t1-up/.t1-down；类别色只用于类别标签，不碰涨跌色。 */
.hm { --hm-quant: #6b5ca5; --hm-quant-bg: #efecf8; display: grid; gap: 12px; min-width: 0; }
.hm-views { margin: 0; }
.hm-views .hm-badge { display: inline-block; min-width: 16px; margin-left: 4px; padding: 0 5px; border-radius: 8px; background: var(--warn); color: #fff; font-size: 11px; font-weight: 600; line-height: 16px; text-align: center; }
.hm-views button.on .hm-badge { background: #fff; color: var(--ink); }
.hm-views .hm-badge[hidden] { display: none; }
.hm-body { display: grid; gap: 12px; min-width: 0; }
.hm-msg { margin: 0; padding: 6px 10px; border-radius: 6px; background: var(--teal-bg); color: var(--teal); font-size: 13px; }
.hm-msg.bad { background: var(--warn-bg); color: var(--warn); }
.hm-gate { margin: 0; padding: 28px 12px; color: var(--muted); font-size: 13.5px; text-align: center; }
.hm-gate a { color: var(--teal); }
.hm-foot { margin: 4px 0 0; color: var(--faint); font-size: 11.5px; line-height: 1.6; }
.hm-faint { color: var(--faint); }
.hm-pad { margin: 0; padding: 6px 2px; font-size: 12.5px; }
.hm .link, .hm-dialog .link { font: inherit; color: var(--ink); background: none; border: 0; padding: 0; cursor: pointer; text-align: left; }
.hm .link:hover, .hm-dialog .link:hover { color: var(--teal); text-decoration: underline; }
.hm .link:focus-visible, .hm-dialog .link:focus-visible { outline: 2px solid var(--teal); outline-offset: 2px; border-radius: 2px; }

/* 图标按钮：只放图标，悬停有提示 */
.hm-ico { display: inline-grid; place-items: center; width: 28px; height: 28px; padding: 0; border: 1px solid transparent; border-radius: 6px; background: transparent; color: var(--muted); cursor: pointer; flex: none; }
.hm-ico svg { width: 15px; height: 15px; }
.hm-ico:hover:not(:disabled) { color: var(--teal); border-color: var(--line); background: var(--card); }
.hm-ico:focus-visible { outline: 2px solid var(--teal); outline-offset: 1px; }
.hm-ico:disabled { opacity: .35; cursor: default; }

/* 每日动向 */
.hm-daybar { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; align-items: center; }
.hm-date { display: flex; align-items: center; gap: 2px; }
.hm-date select { padding: 5px 8px; border: 1px solid var(--line); border-radius: 6px; background: var(--card); color: var(--ink); font: inherit; font-size: 13.5px; font-weight: 600; font-variant-numeric: tabular-nums; }
.hm-date select:focus-visible { outline: 2px solid var(--teal); outline-offset: 1px; }
.hm-groups { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; margin: 0; border: 1px solid var(--line); border-radius: 8px; background: var(--card); overflow: hidden; }
.hm-group { display: grid; gap: 2px; padding: 7px 12px; border-left: 1px solid var(--line-2); min-width: 0; }
.hm-group:first-child { border-left: 0; }
.hm-group dt { color: var(--muted); font-size: 11.5px; letter-spacing: .04em; white-space: nowrap; }
.hm-group dd { margin: 0; font-size: 16px; font-weight: 650; font-variant-numeric: tabular-nums; color: var(--ink); }
.hm-group dd.t1-up { color: var(--up); } .hm-group dd.t1-down { color: var(--down); }
.hm-group.g-hot dt { color: var(--ink); font-weight: 600; }
.hm-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.hm-chips button { appearance: none; font: inherit; font-size: 12.5px; color: var(--ink-2); background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: 3px 11px; cursor: pointer; }
.hm-chips button span { color: var(--faint); font-variant-numeric: tabular-nums; }
.hm-chips button:hover { border-color: var(--teal); color: var(--teal); }
.hm-chips button.on { background: var(--ink); border-color: var(--ink); color: #fff; }
.hm-chips button.on span { color: rgba(255, 255, 255, .7); }
.hm-chips button:focus-visible { outline: 2px solid var(--teal); outline-offset: 1px; }
.hm-note { margin-left: auto; color: var(--faint); font-size: 12px; }
.hm-table td { vertical-align: top; }
.hm-table td.hm-who { padding-top: 7px; }
.hm-table td.r, .hm-table td.hm-net { padding-top: 7px; }
.hm-net { font-weight: 650; }
.hm-person { font-weight: 600; }
.hm-stocks { white-space: normal !important; min-width: 280px; }
.hm-stock { display: inline-flex; align-items: baseline; gap: 5px; margin: 2px 4px 2px 0; padding: 2px 8px; border: 1px solid var(--line-2); border-radius: 5px; background: var(--surface); color: var(--ink); font: inherit; font-size: 12.5px; cursor: pointer; white-space: nowrap; }
.hm-stock:hover { border-color: var(--teal); background: var(--card); }
.hm-stock:focus-visible { outline: 2px solid var(--teal); outline-offset: 1px; }
.hm-stock i { font-style: normal; font-size: 11.5px; }
.hm-stock b { font-weight: 650; font-variant-numeric: tabular-nums; }
.hm-stock em, .hm-multi { font-style: normal; font-size: 10.5px; color: var(--warn); border: 1px solid currentColor; border-radius: 3px; padding: 0 3px; line-height: 14px; }
.hm-multi { margin-left: 6px; }

/* 类别标签 */
.hm-cat { display: inline-block; padding: 1px 7px; border-radius: 4px; font-size: 11.5px; line-height: 18px; white-space: nowrap; background: var(--surface-2); color: var(--muted); }
.hm-cat.c-hot { background: var(--accent-bg); color: var(--accent-2); }
.hm-cat.c-quant { background: var(--hm-quant-bg, #efecf8); color: var(--hm-quant, #6b5ca5); }
.hm-cat.c-retail { background: var(--warn-bg); color: var(--warn); }
.hm-cat.c-inst { background: var(--power-dc-bg); color: var(--power-dc); }
.hm-cat.c-north { background: var(--teal-bg); color: var(--teal); }
.hm-dot { display: inline-block; width: 6px; height: 6px; margin-left: 6px; border-radius: 50%; background: var(--warn); vertical-align: middle; }

/* 游资名录 */
.hm-toolbar { display: flex; align-items: center; gap: 8px; }
.hm-search { flex: 1 1 auto; max-width: 360px; min-width: 0; padding: 6px 10px; border: 1px solid var(--line); border-radius: 6px; background: var(--card); color: var(--ink); font: inherit; font-size: 13px; }
.hm-search:focus-visible { outline: 2px solid var(--teal); outline-offset: 1px; }
.hm-h3 { margin: 6px 0 6px; color: var(--ink); font-size: 13px; font-weight: 650; }
.hm-h3 small { margin-left: 8px; color: var(--faint); font-weight: 400; font-size: 11.5px; }
.hm-log summary { color: var(--muted); font-size: 12.5px; cursor: pointer; }
.hm-log summary:focus-visible { outline: 2px solid var(--teal); outline-offset: 2px; }
.hm-loglist { display: grid; gap: 4px; margin: 8px 0 0; padding: 0; list-style: none; font-size: 12.5px; }
.hm-loglist li { display: grid; grid-template-columns: 116px 64px 88px minmax(0, 1fr); gap: 8px; color: var(--ink-2); }
.hm-loglist time { color: var(--faint); font-variant-numeric: tabular-nums; }
.hm-loglist b { font-weight: 600; }

/* 待确认 */
.hm-sec { display: grid; gap: 2px; }
.hm-list { margin: 0; padding: 0; list-style: none; border: 1px solid var(--line-2); border-radius: 8px; background: var(--card); }
.hm-list li { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; padding: 7px 10px; border-top: 1px solid var(--line-2); font-size: 13px; }
.hm-list li:first-child { border-top: 0; }
.hm-key { font-weight: 600; min-width: 0; overflow-wrap: anywhere; }
.hm-key small { margin-left: 6px; color: var(--faint); font-weight: 400; }
.hm-ops { display: inline-flex; gap: 4px; margin-left: auto; }
.hm-pick { appearance: none; font: inherit; font-size: 12.5px; padding: 3px 10px; border: 1px solid var(--line); border-radius: 6px; background: var(--card); color: var(--ink-2); cursor: pointer; }
.hm-pick:hover { border-color: var(--teal); color: var(--teal); }
.hm-pick:focus-visible { outline: 2px solid var(--teal); outline-offset: 1px; }

/* 弹层 */
.hm-dialog { width: min(640px, calc(100vw - 28px)); max-height: calc(100vh - 40px); padding: 0; border: 0; border-radius: 12px; background: var(--card); color: var(--ink); box-shadow: 0 22px 64px rgba(20, 35, 52, .28); overflow: auto; }
.hm-dialog::backdrop { background: rgba(24, 38, 56, .38); }
.hm-form { display: grid; gap: 10px; padding: 18px 20px 18px; margin: 0; }
.hm-dhead { display: flex; align-items: center; gap: 8px; }
.hm-dhead h2 { margin: 0; color: var(--accent); font-size: 18px; font-weight: 720; outline: none; }
.hm-dhead > .hm-ico:last-child { margin-left: auto; }
.hm-dops { display: inline-flex; align-items: center; gap: 4px; margin-left: 4px; }
.hm-dops .hm-ask { color: var(--warn); font-size: 12.5px; margin-right: 4px; }
.hm-dops button:not(.hm-ico), .hm-actions button { appearance: none; font: inherit; font-size: 13px; padding: 5px 14px; border: 1px solid var(--line); border-radius: 6px; background: var(--card); color: var(--ink-2); cursor: pointer; }
.hm-actions button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
.hm-dops button.danger { background: var(--warn); border-color: var(--warn); color: #fff; }
.hm-dops button:focus-visible, .hm-actions button:focus-visible { outline: 2px solid #6d879f; outline-offset: 2px; }
.hm-actions { display: flex; justify-content: flex-end; gap: 8px; }
.hm-intro { margin: 0; color: var(--ink-2); font-size: 13px; line-height: 1.65; }
.hm-stats { margin: 0; font-size: 13px; color: var(--ink-2); }
.hm-stats b { font-variant-numeric: tabular-nums; }
/* 席位：紧凑小块，近 60 日上榜过的在前、带次数；没上榜的淡一点 */
.hm-seats { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.hm-seats li { display: inline-flex; align-items: center; gap: 5px; padding: 3px 4px 3px 9px; border: 1px solid var(--line-2); border-radius: 6px; background: var(--surface); color: var(--muted); font-size: 12.5px; }
.hm-seats li.on { background: var(--card); border-color: var(--line); color: var(--ink); }
.hm-seats li b { color: var(--teal); font-size: 11.5px; font-weight: 650; font-variant-numeric: tabular-nums; }
.hm-seats small { color: var(--faint); font-size: 11px; }
.hm-seats .hm-ico { width: 20px; height: 20px; }
.hm-seats .hm-ico svg { width: 11px; height: 11px; }
.hm-seats li:not(:has(.hm-ico)) { padding-right: 9px; }
.hm-roster { max-width: 960px; }
.hm-quiet summary { margin: 8px 0 4px; color: var(--muted); font-size: 12.5px; cursor: pointer; }
.hm-quiet summary:focus-visible { outline: 2px solid var(--teal); outline-offset: 2px; }
.hm-inline { display: flex; gap: 6px; align-items: center; }
.hm-inline input { min-width: 0; padding: 5px 9px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--ink); font: inherit; font-size: 13px; }
.hm-inline input[name="org"] { flex: 1 1 auto; }
.hm-inline input:focus-visible { outline: 2px solid #6d879f; outline-offset: 1px; }
.hm-err { margin: 0; color: var(--warn); font-size: 12.5px; }
.hm-field { display: grid; gap: 6px; min-width: 0; margin: 0; padding: 0; border: 0; font-size: 13px; color: var(--ink-2); }
.hm-field > span, .hm-field > legend { font-weight: 600; color: var(--ink); padding: 0; margin-bottom: 6px; }
.hm-field > small { color: var(--muted); font-size: 12px; }
.hm-field input[type="text"], .hm-field input:not([type]), .hm-field input[type="date"], .hm-field textarea { width: 100%; min-width: 0; padding: 7px 10px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--ink); font: inherit; font-size: 13px; }
.hm-field textarea { resize: vertical; line-height: 1.6; }
.hm-field input:focus-visible, .hm-field textarea:focus-visible { outline: 2px solid #6d879f; outline-offset: 1px; }
.hm-choices { display: flex; flex-wrap: wrap; gap: 6px; }
.hm-choices label { position: relative; cursor: pointer; }
.hm-choices input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.hm-choices span { display: inline-block; padding: 5px 12px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--ink-2); font-size: 13px; white-space: nowrap; }
.hm-choices input:checked + span { border-color: var(--accent); background: var(--accent); color: #fff; }
.hm-choices input:focus-visible + span { outline: 2px solid #6d879f; outline-offset: 2px; }
.hm-seatname { margin: 0; padding: 8px 10px; border-radius: 6px; background: var(--surface); font-size: 13px; overflow-wrap: anywhere; }

@media (max-width: 900px) {
  .hm-daybar { grid-template-columns: minmax(0, 1fr); }
  .hm-groups { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hm-group:nth-child(4) { border-left: 0; }
  .hm-group:nth-child(n + 4) { border-top: 1px solid var(--line-2); }
}
@media (max-width: 700px) {
  /* 手机：每人一块，名字和金额一行，个股换到下一行 */
  .hm-day thead { display: none; }
  .hm-day, .hm-day tbody { display: block; }
  .hm-day tr { display: grid; grid-template-columns: minmax(0, 1fr) auto auto auto; gap: 2px 12px; align-items: baseline; padding: 7px 2px; border-bottom: 1px solid var(--line-2); }
  .hm-day td { display: block; padding: 0 !important; border: 0 !important; }
  .hm-day td.r:not(.hm-net) { color: var(--faint); font-size: 11.5px; }
  .hm-day td.r:not(.hm-net)::before { content: attr(data-label); margin-right: 2px; }
  .hm-day td.hm-stocks { grid-column: 1 / -1; min-width: 0; }
}
@media (max-width: 560px) {
  .hm-loglist li { grid-template-columns: 1fr 1fr; }
  .hm-stocks { min-width: 220px; }
  .hm-inline { flex-wrap: wrap; }
}
