neerajkalyank commited on
Commit
75f239a
1 Parent(s): 543efc3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +83 -118
app.py CHANGED
@@ -76,9 +76,9 @@ def billing_interface(patient_id):
76
 
77
  # Custom CSS styling
78
  custom_css = """
79
- @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
80
 
81
- /* Reset and Base Styles */
82
  * {
83
  margin: 0;
84
  padding: 0;
@@ -86,9 +86,9 @@ custom_css = """
86
  }
87
 
88
  body {
89
- font-family: 'Poppins', Arial, sans-serif;
90
- background: linear-gradient(135deg, #f3faff, #e0f4f9);
91
- color: #333;
92
  display: flex;
93
  justify-content: center;
94
  align-items: center;
@@ -99,96 +99,91 @@ body {
99
  .gradio-container {
100
  max-width: 900px;
101
  width: 100%;
102
- margin: 30px auto;
103
  padding: 40px;
104
- background-color: #fff;
105
- border-radius: 12px;
106
- border: 1px solid #d0e7f1;
107
- box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
108
  transition: box-shadow 0.3s ease, transform 0.3s ease;
109
  }
110
-
111
  .gradio-container:hover {
112
- transform: scale(1.01);
113
- box-shadow: 0 12px 36px rgba(0, 0, 0, 0.12);
114
  }
115
 
116
- /* Header */
117
  #header {
118
- color: #005b8c;
119
  text-align: center;
120
  font-weight: 700;
121
- font-size: 2.4em;
122
- margin-bottom: 20px;
123
- letter-spacing: 0.5px;
124
- text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1);
125
  }
126
 
127
- /* Typography for Headings */
128
  h1, h2, h3, h4, h5, h6 {
129
- color: #005b8c;
130
  font-weight: 600;
131
  }
132
 
133
  /* Form Field Styles */
134
  input, select, textarea {
135
  width: 100%;
136
- border: 1px solid #aac9d4;
137
- border-radius: 8px;
138
- padding: 12px 14px;
139
  font-size: 15px;
140
- color: #333;
141
- background: #f7fcff;
142
  margin-bottom: 20px;
143
  transition: all 0.3s ease;
144
- box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.05);
145
  }
146
-
147
  input:focus, select:focus, textarea:focus {
148
- border-color: #41a0c4;
149
- background: #eaf6f9;
150
- box-shadow: 0 4px 10px rgba(65, 160, 196, 0.15);
151
  outline: none;
152
  }
153
 
154
  /* Button Styles */
155
  button {
156
- padding: 12px 24px;
 
157
  font-size: 1em;
158
  font-weight: 600;
159
  border: none;
160
  border-radius: 8px;
161
- color: #fff;
162
- background-color: #007ba7;
163
  cursor: pointer;
164
  transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
165
- box-shadow: 0 4px 12px rgba(0, 123, 167, 0.2);
166
  }
167
-
168
  button:hover {
169
- background-color: #005f80;
170
- transform: translateY(-2px);
171
- box-shadow: 0 6px 16px rgba(0, 123, 167, 0.3);
172
  }
173
-
174
  button:active {
175
- transform: translateY(1px);
176
  }
177
 
178
- /* Toggle Switch */
179
  .toggle-switch {
180
  position: relative;
181
  display: inline-block;
182
- width: 50px;
183
- height: 28px;
 
184
  }
185
-
186
  .toggle-switch input {
187
  opacity: 0;
188
  width: 0;
189
  height: 0;
190
  }
191
-
192
  .toggle-slider {
193
  position: absolute;
194
  cursor: pointer;
@@ -196,131 +191,101 @@ button:active {
196
  left: 0;
197
  right: 0;
198
  bottom: 0;
199
- background-color: #c2d6dc;
200
  transition: 0.4s;
201
  border-radius: 34px;
202
  }
203
-
204
  .toggle-slider:before {
205
  position: absolute;
206
  content: "";
207
- height: 22px;
208
- width: 22px;
209
  left: 3px;
210
  bottom: 3px;
211
- background-color: #fff;
212
  transition: 0.4s;
213
  border-radius: 50%;
214
  }
215
-
216
  input:checked + .toggle-slider {
217
- background-color: #007ba7;
218
  }
219
-
220
  input:checked + .toggle-slider:before {
221
- transform: translateX(22px);
222
  }
223
 
224
  /* Radio Button Group */
225
  .gr-radio-group label {
226
  display: inline-flex;
227
  align-items: center;
228
- padding: 8px 16px;
229
- border: 1px solid #b0d3dc;
230
- border-radius: 8px;
231
- background: #f7fcff;
232
- margin-right: 10px;
233
- cursor: pointer;
234
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
 
235
  }
236
-
237
  .gr-radio-group label:hover {
238
- background-color: #eaf6f9;
239
- border-color: #41a0c4;
240
- color: #005b8c;
241
  }
242
-
243
  .gr-radio-group input[type="radio"] {
244
  appearance: none;
245
- width: 18px;
246
- height: 18px;
247
- margin-right: 8px;
248
- border: 2px solid #007ba7;
249
  border-radius: 50%;
250
  transition: background-color 0.3s, border-color 0.3s;
251
  }
252
-
253
  .gr-radio-group input[type="radio"]:checked {
254
- background-color: #007ba7;
255
- border-color: #007ba7;
256
  }
257
 
258
  /* Tabs */
259
  .nav-tabs {
260
  display: flex;
261
  justify-content: space-around;
262
- background-color: #fff;
263
- padding: 12px;
264
- border-bottom: 2px solid #e0f2f4;
265
- border-radius: 8px;
266
- margin-bottom: 20px;
267
  }
268
-
269
  .nav-tabs .nav-item {
270
- font-size: 1.1em;
271
  font-weight: 500;
272
- color: #333;
273
- padding: 10px 20px;
274
  border: 2px solid transparent;
275
- border-radius: 6px;
276
  cursor: pointer;
277
  transition: color 0.3s, background-color 0.3s, border-color 0.3s;
278
  }
279
-
280
  .nav-tabs .nav-item:hover, .nav-tabs .nav-item.active {
281
- color: #007ba7;
282
- background-color: #eaf6f9;
283
- border-color: #007ba7;
284
  }
285
 
286
  /* Output Text Styling */
287
  #registration_output, #test_output, #billing_output {
288
- color: #333;
289
- background-color: #f0fbff;
290
- padding: 15px;
291
- border-radius: 8px;
292
  font-weight: 600;
293
  text-align: left;
294
- border: 1px solid #d0e7f1;
295
- box-shadow: 0 3px 8px rgba(0, 0, 0, 0.05);
296
  transition: background-color 0.3s ease, border-color 0.3s ease;
297
  }
298
-
299
  #registration_output:hover, #test_output:hover, #billing_output:hover {
300
- background-color: #e8f7fb;
301
- border-color: #41a0c4;
302
- }
303
-
304
- /* Media Query for Mobile Responsiveness */
305
- @media (max-width: 768px) {
306
- .gradio-container {
307
- padding: 20px;
308
- margin: 20px;
309
- }
310
-
311
- #header {
312
- font-size: 2em;
313
- }
314
-
315
- .nav-tabs .nav-item {
316
- font-size: 1em;
317
- padding: 8px 12px;
318
- }
319
-
320
- button {
321
- padding: 10px 20px;
322
- font-size: 0.9em;
323
- }
324
  }
325
 
326
  """
 
76
 
77
  # Custom CSS styling
78
  custom_css = """
79
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
80
 
81
+ /* General Page Style */
82
  * {
83
  margin: 0;
84
  padding: 0;
 
86
  }
87
 
88
  body {
89
+ font-family: 'Inter', Arial, sans-serif;
90
+ background: linear-gradient(135deg, #edf2f7, #cfd8e3);
91
+ color: #333333;
92
  display: flex;
93
  justify-content: center;
94
  align-items: center;
 
99
  .gradio-container {
100
  max-width: 900px;
101
  width: 100%;
102
+ margin: 40px auto;
103
  padding: 40px;
104
+ background-color: #ffffff;
105
+ border-radius: 16px;
106
+ border: 1px solid #e2e8f0;
107
+ box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
108
  transition: box-shadow 0.3s ease, transform 0.3s ease;
109
  }
 
110
  .gradio-container:hover {
111
+ transform: translateY(-5px);
112
+ box-shadow: 0 12px 36px rgba(0, 0, 0, 0.15);
113
  }
114
 
115
+ /* Header Styling */
116
  #header {
117
+ color: #1a202c;
118
  text-align: center;
119
  font-weight: 700;
120
+ font-size: 2.6em;
121
+ margin-bottom: 25px;
122
+ letter-spacing: 0.7px;
123
+ text-transform: uppercase;
124
  }
125
 
126
+ /* Headings */
127
  h1, h2, h3, h4, h5, h6 {
128
+ color: #1a202c;
129
  font-weight: 600;
130
  }
131
 
132
  /* Form Field Styles */
133
  input, select, textarea {
134
  width: 100%;
135
+ border: 1px solid #cbd5e0;
136
+ border-radius: 12px;
137
+ padding: 14px;
138
  font-size: 15px;
139
+ color: #2d3748;
140
+ background: #f7fafc;
141
  margin-bottom: 20px;
142
  transition: all 0.3s ease;
 
143
  }
 
144
  input:focus, select:focus, textarea:focus {
145
+ border-color: #3182ce;
146
+ background: #e3f2fd;
147
+ box-shadow: 0 4px 8px rgba(49, 130, 206, 0.2);
148
  outline: none;
149
  }
150
 
151
  /* Button Styles */
152
  button {
153
+ display: inline-block;
154
+ padding: 14px 28px;
155
  font-size: 1em;
156
  font-weight: 600;
157
  border: none;
158
  border-radius: 8px;
159
+ color: #ffffff;
160
+ background-color: #3182ce;
161
  cursor: pointer;
162
  transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
163
+ box-shadow: 0 5px 15px rgba(49, 130, 206, 0.2);
164
  }
 
165
  button:hover {
166
+ background-color: #2c5282;
167
+ transform: translateY(-3px);
168
+ box-shadow: 0 8px 24px rgba(44, 82, 130, 0.3);
169
  }
 
170
  button:active {
171
+ transform: translateY(2px);
172
  }
173
 
174
+ /* Toggle Switch (Checkbox Alternative) */
175
  .toggle-switch {
176
  position: relative;
177
  display: inline-block;
178
+ width: 55px;
179
+ height: 30px;
180
+ margin: 10px;
181
  }
 
182
  .toggle-switch input {
183
  opacity: 0;
184
  width: 0;
185
  height: 0;
186
  }
 
187
  .toggle-slider {
188
  position: absolute;
189
  cursor: pointer;
 
191
  left: 0;
192
  right: 0;
193
  bottom: 0;
194
+ background-color: #cbd5e0;
195
  transition: 0.4s;
196
  border-radius: 34px;
197
  }
 
198
  .toggle-slider:before {
199
  position: absolute;
200
  content: "";
201
+ height: 24px;
202
+ width: 24px;
203
  left: 3px;
204
  bottom: 3px;
205
+ background-color: #ffffff;
206
  transition: 0.4s;
207
  border-radius: 50%;
208
  }
 
209
  input:checked + .toggle-slider {
210
+ background-color: #3182ce;
211
  }
 
212
  input:checked + .toggle-slider:before {
213
+ transform: translateX(25px);
214
  }
215
 
216
  /* Radio Button Group */
217
  .gr-radio-group label {
218
  display: inline-flex;
219
  align-items: center;
220
+ padding: 12px 18px;
221
+ border: 1px solid #cbd5e0;
222
+ border-radius: 10px;
223
+ color: #2d3748;
224
+ background: #f7fafc;
225
+ margin-right: 12px;
226
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
227
+ cursor: pointer;
228
  }
 
229
  .gr-radio-group label:hover {
230
+ background-color: #e3f2fd;
231
+ border-color: #3182ce;
232
+ color: #2c5282;
233
  }
 
234
  .gr-radio-group input[type="radio"] {
235
  appearance: none;
236
+ width: 20px;
237
+ height: 20px;
238
+ margin-right: 10px;
239
+ border: 2px solid #3182ce;
240
  border-radius: 50%;
241
  transition: background-color 0.3s, border-color 0.3s;
242
  }
 
243
  .gr-radio-group input[type="radio"]:checked {
244
+ background-color: #3182ce;
245
+ border-color: #3182ce;
246
  }
247
 
248
  /* Tabs */
249
  .nav-tabs {
250
  display: flex;
251
  justify-content: space-around;
252
+ background-color: #ffffff;
253
+ padding: 15px;
254
+ border-bottom: 2px solid #cbd5e0;
255
+ border-radius: 10px;
256
+ margin-bottom: 25px;
257
  }
 
258
  .nav-tabs .nav-item {
259
+ font-size: 1.2em;
260
  font-weight: 500;
261
+ color: #2d3748;
262
+ padding: 12px 25px;
263
  border: 2px solid transparent;
264
+ border-radius: 8px;
265
  cursor: pointer;
266
  transition: color 0.3s, background-color 0.3s, border-color 0.3s;
267
  }
 
268
  .nav-tabs .nav-item:hover, .nav-tabs .nav-item.active {
269
+ color: #3182ce;
270
+ background-color: #e3f2fd;
271
+ border-color: #3182ce;
272
  }
273
 
274
  /* Output Text Styling */
275
  #registration_output, #test_output, #billing_output {
276
+ color: #2d3748;
277
+ background-color: #f0f7ff;
278
+ padding: 20px;
279
+ border-radius: 10px;
280
  font-weight: 600;
281
  text-align: left;
282
+ border: 1px solid #cbd5e0;
283
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.05);
284
  transition: background-color 0.3s ease, border-color 0.3s ease;
285
  }
 
286
  #registration_output:hover, #test_output:hover, #billing_output:hover {
287
+ background-color: #e3f2fd;
288
+ border-color: #3182ce;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
289
  }
290
 
291
  """