.hm{gap:12px;min-width:0;display:grid}.hm-tabs{flex-wrap:wrap;gap:6px;display:flex}.hm-tabs button{font:inherit;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.9rem;font-weight:700}.hm-tabs button[aria-selected=true]{background:var(--primary);color:var(--primary-ink);border-color:#0000}.hm-main{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:12px;display:grid}.hm-view,.hm-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:0;padding:10px}.hm-view{gap:8px;display:grid;position:sticky;top:84px}.hm-3d{border-radius:var(--radius-xs);touch-action:none;background:#e2e8f0;width:100%;height:480px;display:block;overflow:hidden}.hm-readout{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 14px;font-size:.86rem;display:flex}.hm-readout b{color:var(--text)}.hm-readout .ok{color:#16a34a;font-weight:800}.hm .bad,.hm-readout .bad{color:#dc2626;font-weight:700}.hm-legend{margin:0;font-size:.8rem}.hm-side section{gap:8px;display:grid}.hm-side h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:6px 0 0;font-size:.72rem}.hm-side p{margin:0}.hm-poses,.hm-row{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.hm-poses .mk-btn.small,.hm-row .mk-btn.small{margin-left:0}.hm-sliders{gap:4px;display:grid}.hm-sl{grid-template-columns:minmax(0,11em) minmax(0,1fr) 4.2em;align-items:center;gap:8px;font-size:.86rem;display:grid}.hm-sl b{text-align:right;font-variant-numeric:tabular-nums}.hm-sl.bad span,.hm-sl.bad b{color:#dc2626}.hm-sl input{width:100%}.hm-tbl{border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:.88rem}.hm-tbl td{border-bottom:1px solid var(--border);padding:3px 10px 3px 0}.hm-charts{gap:6px;display:grid}.hm-charts figure{margin:0}.hm-charts figcaption{font-size:.8rem;font-weight:600}.hm-charts figcaption small{color:var(--muted);font-weight:400}.hm-charts svg{width:100%;height:auto;display:block}.hm-ch-bg{fill:var(--surface-2)}.hm-ch-lim{stroke:#94a3b8;stroke-dasharray:2 2}.hm-ch-cur{stroke:#0f172a;stroke-width:1px;opacity:.5}.hm-code{border:1px solid var(--border-strong);background:var(--surface-2);width:100%;color:var(--text);resize:vertical;border-radius:8px;padding:10px;font:.88rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.hm-pre{color:#e2e8f0;background:#0f172a;border-radius:8px;max-height:420px;margin:0;padding:10px;font:.8rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-x:auto}.hm-blocks ol{gap:4px;margin:0;padding:0;list-style:none;display:grid}.hm-blk{color:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;font-size:.88rem;display:flex}.hm-blk.pose{background:#7c3aed}.hm-blk.joint{background:#2563eb}.hm-blk.wait{background:#d97706}.hm-blk.walk{background:#059669}.hm-blk select,.hm-blk input{font:inherit;border:0;border-radius:6px;padding:2px 4px}.hm-blk-ctl{gap:2px;margin-left:auto;display:inline-flex}.hm-blk-ctl button{color:#fff;cursor:pointer;background:#fff3;border:0;border-radius:6px;width:26px;height:26px}.hm .rt-mode{border:1px solid var(--border-strong);border-radius:999px;display:inline-flex;overflow:hidden}.hm .rt-mode button{font:inherit;background:var(--surface);color:var(--text);cursor:pointer;border:0;padding:5px 12px;font-size:.85rem;font-weight:700}.hm .rt-mode button[aria-pressed=true]{background:var(--primary);color:var(--primary-ink)}.hm-sv-leg{stroke:#2563eb;stroke-width:6px;stroke-linecap:round}.hm-sv-arm{stroke:#0ea5e9;stroke-width:5px;stroke-linecap:round}.hm-sv-foot{stroke:#1e293b;stroke-width:5px}.hm-sv-torso{stroke:#f97316;stroke-width:14px;stroke-linecap:round}@media (max-width:980px){.hm-main{grid-template-columns:minmax(0,1fr)}.hm-view{position:static}.hm-3d{height:340px}}@media (max-width:480px){.hm-sl{grid-template-columns:minmax(0,1fr) 4em}.hm-sl input{grid-area:2/1/auto/-1}}@media (max-width:760px),(pointer:coarse){.hm-tabs button,.hm-poses .mk-btn.small,.hm-row .mk-btn.small{min-height:44px}.hm-sl input[type=range]{min-height:32px}}
