#board.hj{position:relative;width:min(520px,94vw);background:#fffaf1;border-radius:18px;border:1px solid #e4dccd;box-shadow:0 10px 22px rgba(70,40,10,.18);padding:14px;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.hj-tray{background:#f4ecdd;border-radius:14px;padding:10px 12px;border:2px solid transparent;transition:border-color .2s}
.hj-tray.on{border-color:#7a4fc0;background:#f6f1fd}
.hj-who{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-bottom:6px}
.hj-who b{font-size:15px}.hj-who span{color:#5c554b;font-weight:700}
.hj-marbles{display:flex;flex-wrap:wrap;gap:4px;min-height:22px;align-items:center}
.hj-marbles small{color:#8a8276}
.hj-mb{width:18px;height:18px;border-radius:50%;display:inline-block;background:radial-gradient(circle at 32% 30%,#fff 0 12%,var(--c) 45%,color-mix(in srgb,var(--c) 70%,#000) 100%);box-shadow:0 1px 2px rgba(0,0,0,.3)}
.hj-mb.fly{position:absolute;z-index:5;pointer-events:none}
.hj-mid{display:flex;flex-direction:column;align-items:center;gap:4px}
.hj-fist{width:170px;height:140px}.hj-fist svg{width:100%;height:100%}
.hj-fist.shake svg{animation:hjshake .5s ease-in-out 2}
@keyframes hjshake{0%,100%{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}
.hj-call{font-size:16px;font-weight:700;text-align:center;min-height:24px}
.hj-call b{color:#7a4fc0;font-size:19px}
.hj-ctrl{display:flex;flex-direction:column;align-items:center;gap:10px;min-height:10px}
.hj-step{display:flex;align-items:center;gap:8px;font-size:14px}
.hj-step span{color:#5c554b;margin-right:4px}
.hj-step button{width:40px;height:40px;border-radius:50%;font-size:20px;font-weight:800;padding:0}
.hj-step b{min-width:34px;text-align:center;font-size:24px}
.hj-pick{display:flex;gap:10px}
.hj-par{width:96px;height:52px;font-size:22px;font-weight:800;border-radius:14px}
.hj-par.on{background:#7a4fc0;color:#fff;border-color:#7a4fc0}
.hj-go{min-width:160px;padding:11px 18px}
.hj-cover{position:absolute;inset:0;background:rgba(38,35,32,.92);color:#fff;display:none;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:8;text-align:center;padding:24px}
.hj-cover.show{display:flex}
.hj-cover p{font-size:19px;font-weight:700;margin:0;line-height:1.5}
@media(max-width:480px){.hj-fist{width:140px;height:116px}.hj-mb{width:15px;height:15px}}
