import streamlit as st def init_session_state(): if "dark_mode" not in st.session_state: st.session_state.dark_mode = False if "code" not in st.session_state: st.session_state.code = "" if "stdin" not in st.session_state: st.session_state.stdin = "" def theme_toggle(): theme_choice = st.radio( "🎨 Theme", options=["☀️", "🌙"], horizontal=True, label_visibility="collapsed" ) st.session_state.dark_mode = (theme_choice == "🌙") return st.session_state.dark_mode def apply_theme(): dm = st.session_state.dark_mode colors = { "bg": "#0f1620" if dm else "#f5f5f5", "panel_bg": "#1c2330" if dm else "#ffffff", "text": "#e3e8f1" if dm else "#1a1a1a", "accent": "#ff5252", "border": "#2a3240" if dm else "#dddddd", "shadow": "rgba(0,0,0,0.3)" if dm else "rgba(0,0,0,0.1)", } ace_theme = "monokai" if dm else "chrome" st.markdown( f""" """, unsafe_allow_html=True, ) return colors, ace_theme