e14554a75a
- st.currentTime is now session-absolute (0 = session bar 0) - schedulePianoRollMidi adds sessionBeatOffset to note timing so notes at renderBeatOffset beats are scheduled with correct delay - Playhead rendering: removed renderBeatOffset (uses st.currentTime directly as session-absolute beats) - handleEditMidiInTab/handleSwitchMidiItem: currentTime = 0 - Ruler click: clickTime = clickBeat * beatSec (session-absolute)