import gradio as gr from gradio.themes.base import Base from gradio.themes.utils import colors, fonts, sizes class FastRTCProTheme(Base): def __init__( self, *, primary_hue=colors.blue, secondary_hue=colors.teal, neutral_hue=colors.slate, spacing_size=sizes.spacing_md, radius_size=sizes.radius_md, text_size=sizes.text_md, font=(fonts.GoogleFont("Inter"), "ui-sans-serif", "sans-serif"), font_mono=(fonts.GoogleFont("Fira Code"), "ui-monospace", "monospace"), ): super().__init__( primary_hue=primary_hue, secondary_hue=secondary_hue, neutral_hue=neutral_hue, spacing_size=spacing_size, radius_size=radius_size, text_size=text_size, font=font, font_mono=font_mono, ) super().set( # Body & Layout body_background_fill="#F8FAFC", body_text_color="#1F2937", # Panels/Blocks block_background_fill="white", block_shadow="*shadow_drop_md", block_border_width="1px", block_title_text_weight="600", # Buttons button_primary_background_fill="linear-gradient(90deg, *primary_400, *secondary_400)", button_primary_background_fill_hover="linear-gradient(90deg, *primary_300, *secondary_300)", button_primary_text_color="white", button_primary_shadow="*shadow_drop_sm", # Sliders, Inputs slider_color="*primary_500", input_border_color="*neutral_300", input_border_color_focus="*primary_500", input_shadow="*shadow_inset_sm", # Links & Highlights link_text_color="*primary_600", link_text_color_hover="*primary_700", # Loaders loader_color="*primary_500", ) fast_rtc_theme = FastRTCProTheme()