.calculus-motion{--cm-distance:var(--diagram-first);--cm-speed:var(--diagram-third);--cm-comparison:var(--diagram-second);color:var(--ink)}.cm-scene{gap:12px;display:grid}.cm-scene p,.cm-track p,.cm-local p{margin:0}.cm-plot{background:var(--surface);border-radius:var(--radius-small);width:100%;max-width:620px;height:auto;margin-inline:auto;display:block;overflow:visible}.cm-plot text,.cm-track text{font-family:var(--font-body);fill:var(--ink)}.cm-axis-name{font-size:18px;font-weight:650}.cm-tick{font-size:18px}.cm-grid{stroke:var(--line);stroke-width:.8px}.cm-axis{stroke:var(--line-strong);stroke-width:1.5px;fill:none}.cm-distance{color:var(--cm-distance)}.cm-speed,.cm-tangent{color:var(--cm-speed)}.cm-comparison,.cm-right-window{color:var(--cm-comparison)}.cm-left-window{color:var(--cm-speed)}.cm-curve{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.cm-curve.cm-comparison{stroke-dasharray:7 4}.cm-curve.cm-left-window,.cm-curve.cm-right-window{stroke-width:2.5px;stroke-dasharray:7 4}.cm-curve.cm-tangent{stroke-width:2px;stroke-dasharray:6 4}.cm-guide{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-dasharray:4 4}.cm-dot{fill:currentColor;stroke:var(--surface);stroke-width:1.5px}.cm-meters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cm-meter{border:1px solid var(--line);border-radius:var(--radius-small);background:var(--surface);gap:6px;padding:12px;display:grid}.cm-meter>span{color:var(--muted);font-size:.87rem}.cm-meter strong{font-variant-numeric:tabular-nums;font-size:1.45rem;line-height:1.25}.cm-meter small{white-space:nowrap;font-size:.8rem;font-weight:500}.cm-track{padding:10px 0}.cm-track svg{width:100%;height:auto;display:block}.cm-road{stroke:var(--line-strong);stroke-width:2px}.cm-car{fill:currentColor}.cm-wheel{fill:var(--ink)}.cm-equation{border-radius:var(--radius-small);background:var(--surface-soft);text-align:center;font-variant-numeric:tabular-nums;padding:12px;line-height:1.75}.cm-note{font-size:.95rem;line-height:1.7}.cm-legend{flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:.9rem;display:flex}.cm-control{gap:4px;padding:12px 0;display:grid}.cm-control input{width:100%;min-height:44px;accent-color:var(--ink)}.cm-buttons{border:0;flex-wrap:wrap;gap:8px;margin:12px 0;padding:0;display:flex}.cm-buttons legend{width:100%;margin-bottom:8px;font-weight:650}.cm-buttons button{border:1px solid var(--line-strong);border-radius:var(--radius-small);background:var(--surface);color:var(--ink);min-height:44px;font:inherit;cursor:pointer;padding:10px 14px}.cm-buttons button[aria-pressed=true]{color:var(--on-ink);background:var(--ink);border-color:var(--ink)}.cm-buttons button:focus-visible,.cm-control input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.cm-table-wrap{overflow-x:auto}.cm-table-wrap table{border-collapse:collapse;text-align:center;width:100%;margin:0;font-size:.84rem}.cm-table-wrap th,.cm-table-wrap td{border:1px solid var(--line);white-space:nowrap;padding:8px 5px}.cm-table-wrap caption{text-align:left;margin-bottom:8px;font-size:.9rem}.cm-local{border:1px solid var(--line);border-radius:var(--radius-small);gap:10px;margin-top:14px;padding:12px;display:grid}.cm-area{fill:var(--diagram-third-soft);stroke:var(--cm-speed);stroke-width:1.5px}.cm-new-area{fill:var(--accent-soft);stroke:var(--accent);stroke-width:2.5px}@media (width<=380px){.cm-meter{padding:9px}.cm-meter strong{font-size:1.2rem}.cm-meter>span{font-size:.78rem}.cm-local{padding:8px}}
