v3.26.3
Revenue (Details) - USD ($)
6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Revenue [Abstract]    
Performance obligations satisfied in prior periods
Remaining performance obligations $ 3,585,000