JerLag commited on
Commit
335df8b
verified
1 Parent(s): 560c6dd

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +26 -7
app.py CHANGED
@@ -16,6 +16,7 @@ import plotly.graph_objects as go
16
  import plotly.io as pio
17
 
18
  # ---------------- Branding Verbatify (CSS + Plotly) ----------------
 
19
  @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800&display=swap');
20
 
21
  /* ---------- Palette Verbatify ---------- */
@@ -35,7 +36,7 @@ import plotly.io as pio
35
  --vb-shadow:0 10px 26px rgba(2,6,23,.08);
36
  }
37
 
38
- /* Forcer un look clair, m锚me si l鈥檋么te est en dark */
39
  * { color-scheme: light !important; }
40
 
41
  html,body,.gradio-container{
@@ -47,7 +48,7 @@ html,body,.gradio-container{
47
  /* largeur contenante */
48
  .gradio-container{max-width:1120px !important;margin:0 auto !important}
49
 
50
- /* ---------- Hero / Header ---------- */
51
  .vb-hero{
52
  display:flex;align-items:center;gap:16px;padding:20px 22px;margin:10px 0 20px;
53
  background:linear-gradient(90deg, rgba(124,58,237,.12), rgba(6,182,212,.12));
@@ -70,10 +71,6 @@ html,body,.gradio-container{
70
  box-shadow:var(--vb-shadow);
71
  }
72
 
73
- /* labels et titres internes */
74
- .gr-markdown h1,.gr-markdown h2,.gr-markdown h3{color:var(--vb-text)}
75
- .gr-markdown h2{font-size:18px;margin-top:10px}
76
-
77
  /* ---------- Inputs ---------- */
78
  .gradio-container input[type="text"],
79
  .gradio-container input[type="number"],
@@ -132,7 +129,7 @@ button,.gr-button{
132
  .js-plotly-plot .plotly .xgrid,.js-plotly-plot .plotly .ygrid{stroke:#E2E8F0 !important;opacity:1}
133
  .js-plotly-plot .plotly .legend text{font-weight:600}
134
 
135
- /* ---------- Chips sentiment (si besoin) ---------- */
136
  .vb-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700}
137
  .vb-chip.pos{background:rgba(16,185,129,.12);color:#065F46}
138
  .vb-chip.neu{background:rgba(148,163,184,.16);color:#334155}
@@ -140,7 +137,29 @@ button,.gr-button{
140
 
141
  /* ---------- Footer ---------- */
142
  .vb-footer{color:var(--vb-muted);font-size:12px;text-align:center;margin:16px 0}
 
143
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
144
 
145
  # ---------------- unidecode (fallback si paquet absent) ----------------
146
  try:
 
16
  import plotly.io as pio
17
 
18
  # ---------------- Branding Verbatify (CSS + Plotly) ----------------
19
+ VB_CSS = r"""
20
  @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800&display=swap');
21
 
22
  /* ---------- Palette Verbatify ---------- */
 
36
  --vb-shadow:0 10px 26px rgba(2,6,23,.08);
37
  }
38
 
39
+ /* forcer un look clair */
40
  * { color-scheme: light !important; }
41
 
42
  html,body,.gradio-container{
 
48
  /* largeur contenante */
49
  .gradio-container{max-width:1120px !important;margin:0 auto !important}
50
 
51
+ /* ---------- Hero ---------- */
52
  .vb-hero{
53
  display:flex;align-items:center;gap:16px;padding:20px 22px;margin:10px 0 20px;
54
  background:linear-gradient(90deg, rgba(124,58,237,.12), rgba(6,182,212,.12));
 
71
  box-shadow:var(--vb-shadow);
72
  }
73
 
 
 
 
 
74
  /* ---------- Inputs ---------- */
75
  .gradio-container input[type="text"],
76
  .gradio-container input[type="number"],
 
129
  .js-plotly-plot .plotly .xgrid,.js-plotly-plot .plotly .ygrid{stroke:#E2E8F0 !important;opacity:1}
130
  .js-plotly-plot .plotly .legend text{font-weight:600}
131
 
132
+ /* ---------- Chips ---------- */
133
  .vb-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700}
134
  .vb-chip.pos{background:rgba(16,185,129,.12);color:#065F46}
135
  .vb-chip.neu{background:rgba(148,163,184,.16);color:#334155}
 
137
 
138
  /* ---------- Footer ---------- */
139
  .vb-footer{color:var(--vb-muted);font-size:12px;text-align:center;margin:16px 0}
140
+ """
141
 
142
+ def apply_plotly_theme():
143
+ pio.templates["verbatify"] = go.layout.Template(
144
+ layout=go.Layout(
145
+ font=dict(family="Manrope, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif", size=13, color="#0F172A"),
146
+ paper_bgcolor="white", plot_bgcolor="white",
147
+ colorway=["#7C3AED","#06B6D4","#2563EB","#10B981","#EF4444","#F59E0B","#14B8A6","#F43F5E"],
148
+ xaxis=dict(gridcolor="#E2E8F0", zerolinecolor="#E2E8F0"),
149
+ yaxis=dict(gridcolor="#E2E8F0", zerolinecolor="#E2E8F0"),
150
+ legend=dict(borderwidth=0, bgcolor="rgba(255,255,255,0)")
151
+ )
152
+ )
153
+ pio.templates.default = "verbatify"
154
+
155
+ LOGO_SVG = """<svg xmlns='http://www.w3.org/2000/svg' width='224' height='38' viewBox='0 0 224 38'>
156
+ <defs><linearGradient id='g' x1='0%' y1='0%' x2='100%'><stop offset='0%' stop-color='#7C3AED'/><stop offset='100%' stop-color='#06B6D4'/></linearGradient></defs>
157
+ <g fill='none' fill-rule='evenodd'>
158
+ <rect x='0' y='7' width='38' height='24' rx='12' fill='url(#g)'/>
159
+ <circle cx='13' cy='19' r='5' fill='#fff' opacity='0.95'/><circle cx='25' cy='19' r='5' fill='#fff' opacity='0.72'/>
160
+ <text x='46' y='25' font-family='Manrope, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif' font-size='20' font-weight='800' fill='#0F172A' letter-spacing='0.2'>Verbatify</text>
161
+ </g>
162
+ </svg>"""
163
 
164
  # ---------------- unidecode (fallback si paquet absent) ----------------
165
  try: