import streamlit as st from pathlib import Path def load_css(): """Charge le fichier CSS personnalisé""" css_file = Path(__file__).parent.parent / "assets" / "style.css" try: with open(css_file, 'r', encoding='utf-8') as f: css_content = f.read() st.markdown(f""" """, unsafe_allow_html=True) except FileNotFoundError: st.warning("Fichier CSS non trouvé. Styles par défaut utilisés.") except Exception as e: st.error(f"Erreur lors du chargement du CSS : {e}") def load_logo(): """Charge le logo du Stade Toulousain""" logo_path = Path(__file__).parent.parent / "assets" / "Logo_Stade_Toulousain_Rugby.png" if logo_path.exists(): return str(logo_path) return None def create_rugby_title(left_text="u18 féminine", right_text="Stade Toulousain"): """Crée un header titre avec logo centré""" # Charger le logo logo_path = load_logo() if logo_path: # Convertir le logo en base64 pour l'affichage logo_base64 = get_base64_of_image(logo_path) st.markdown(f"""
{left_text} Logo Stade Toulousain {right_text}
""", unsafe_allow_html=True) else: # Fallback si le logo n'est pas trouvé st.markdown(f'

{left_text} - {right_text}

', unsafe_allow_html=True) def get_base64_of_image(path): """Convertit une image en base64 pour l'affichage""" import base64 with open(path, "rb") as img_file: return base64.b64encode(img_file.read()).decode() def create_metric_card(title, value, description=""): """Crée une carte métrique personnalisée""" st.markdown(f"""

{title}

{value}

{description}

""", unsafe_allow_html=True)