Restricted open-shell Kohn-Sham (ROKS) theory provides a powerful computational tool for calculating singlet excited state energies and dynamics. However, the possibility of multiple solutions to the ROKS equations - with the associated difficulty of automatically selecting the physically meaningful solution - limits its usefulness for intensive applications such as long-time Born-Oppenheimer molecular dynamics. We present an implementation of ROKS for excited states which prescribes the physically correct solution from an overlap criterion and guarantees that this solution is stationary, allowing for straightforward evaluation of nuclear gradients. The method is used to benchmark ROKS for vertical excitation energies of small and large organic dyes and for the calculation of Stokes shifts. With common density functional approximations, ROKS vertical excitation energies, and Stokes shifts show similar accuracy to those from time-dependent density functional theory and Δ-self-consistent-field approaches. Advantages of the ROKS approach for excited state structure and molecular dynamics are discussed.