.question-visual{margin:0 0 20px;border:1px solid #393644;border-radius:20px;background:#191b22;overflow:hidden;color:#e7e3ec}.visual-canvas{position:relative;width:100%;isolation:isolate}.question-visual svg.exercise-diagram{display:block;width:100%;height:auto;overflow:visible}.exercise-diagram text{font:16px ui-rounded,'Trebuchet MS',system-ui,sans-serif;fill:#eee9f0}.exercise-diagram .diagram-small{font-size:13px}.exercise-diagram .graph-tick{font-size:15px}.graph-grid{stroke:#333540;stroke-width:1}.visual-controls{display:flex;align-items:center;gap:10px;padding:8px 12px;min-height:56px;border-top:1px solid #333540}.visual-controls button{width:42px;height:42px;flex-shrink:0;border-radius:13px;background:#35303f;color:#e0caef}.visual-controls input{width:55px;min-width:30px;flex:1;accent-color:#b9a1d2;cursor:pointer;height:34px}.visual-controls output{font-size:12px;width:117px;line-height:1.4;text-align:right;flex-shrink:0;color:#d1cbd8}.question-visual figcaption{font-size:10px;color:#a4a0ad;text-align:center;padding:4px 10px 9px}.visual-target{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:#272936;border:2px solid #c0b1d1;font-size:17px;font-weight:bold;color:#f1e9f8;z-index:1}.visual-target.chosen{background:#594666;border-color:#e0c8ef}.visual-target.correct{background:#46614b;border-color:#b7d9a3}.visual-target.incorrect{background:#713f45;border-color:#dda2a2}.diagram-stage{opacity:0;transform-origin:180px 128px;transform:scale(.92);transition:opacity .5s,transform .65s}.question-visual[data-stage="0"] .stage-0,.question-visual[data-stage="1"] .stage-1,.question-visual[data-stage="2"] .stage-2{opacity:1;transform:scale(1)}.muscle-left{transform:translateX(var(--contraction));transition:transform .8s}.muscle-right{transform:translateX(calc(-1 * var(--contraction)));transition:transform .8s}.muscle-span{transform-origin:180px 207px;transition:transform .8s}.question-visual[data-stage="1"] .muscle-span{transform:scaleX(.878049)}.question-visual[data-stage="2"] .muscle-span{transform:scaleX(.756098)}.visual-replay .diagram-flow{animation:visual-flow 3s linear 2}.visual-replay .graph-curve{stroke-dasharray:1;animation:visual-trace 1.4s ease-out both}.visual-replay .graph-bar{transform-box:fill-box;transform-origin:center bottom;animation:visual-bars .85s ease-out both}.graph-bar.is-inspected{stroke:#eee4f5;stroke-width:2}.visual-table{border-collapse:collapse;width:100%;font-size:14px;text-align:center;table-layout:fixed}.visual-table caption{padding:18px;font-size:14px;font-weight:bold}.visual-table th{font-weight:500;color:#c6bdd1;padding:12px 6px}.visual-table td{border-top:1px solid #383441;padding:5px}.visual-table button{background:#292633;width:100%;min-height:46px;border-radius:10px;border:1px solid transparent}.visual-table .is-inspected{border-color:#c3afd8;background:#403347}.question-visual.motion-off *{animation:none!important;transition:none!important}@keyframes visual-flow{to{stroke-dashoffset:-64}}@keyframes visual-trace{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes visual-bars{from{transform:scaleY(0)}to{transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.question-visual *{animation:none!important;transition:none!important}}@media(min-width:600px){.question-visual{max-width:480px;margin-left:auto;margin-right:auto}}

.visual-play svg{width:18px;height:18px;display:block;margin:auto}
