|
112 | 112 | <!-- Upload Placeholder --> |
113 | 113 | <div |
114 | 114 | id="uploadPlaceholder" |
115 | | - class="flex flex-col items-center" |
| 115 | + class="flex flex-col items-center px-4" |
116 | 116 | > |
117 | 117 | <div |
118 | | - class="w-14 h-14 rounded-full bg-slate-100 flex items-center justify-center mb-4" |
| 118 | + class="w-12 h-12 sm:w-14 sm:h-14 rounded-full bg-slate-100 flex items-center justify-center mb-3 sm:mb-4" |
119 | 119 | > |
120 | 120 | <svg |
121 | | - class="w-7 h-7 text-slate-400" |
| 121 | + class="w-6 h-6 sm:w-7 sm:h-7 text-slate-400" |
122 | 122 | fill="none" |
123 | 123 | stroke="currentColor" |
124 | 124 | viewBox="0 0 24 24" |
|
132 | 132 | </svg> |
133 | 133 | </div> |
134 | 134 | <span |
135 | | - class="text-slate-700 font-medium text-base mb-1" |
| 135 | + class="text-slate-700 font-medium text-sm sm:text-base mb-1" |
136 | 136 | >Choose a video file</span |
137 | 137 | > |
138 | | - <span class="text-slate-400 text-sm mb-4" |
| 138 | + <span |
| 139 | + class="text-slate-400 text-xs sm:text-sm mb-3 sm:mb-4" |
139 | 140 | >or drag and drop here</span |
140 | 141 | > |
141 | 142 | <button |
142 | 143 | type="button" |
143 | 144 | onclick="loadSampleVideo(event)" |
144 | | - class="inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-white bg-blue-500 hover:bg-blue-600 rounded-lg transition-all" |
| 145 | + class="inline-flex items-center gap-1.5 sm:gap-2 px-3 sm:px-4 py-1.5 sm:py-2 text-xs sm:text-sm font-semibold text-white bg-blue-500 hover:bg-blue-600 rounded-lg transition-all" |
145 | 146 | > |
146 | 147 | <svg |
147 | | - class="w-4 h-4" |
| 148 | + class="w-3.5 h-3.5 sm:w-4 sm:h-4" |
148 | 149 | fill="none" |
149 | 150 | stroke="currentColor" |
150 | 151 | viewBox="0 0 24 24" |
|
162 | 163 | d="M21 12a9 9 0 11-18 0 9 9 0 0118 0z" |
163 | 164 | /> |
164 | 165 | </svg> |
165 | | - Try sample video |
| 166 | + Try sample |
166 | 167 | </button> |
167 | 168 | </div> |
168 | 169 | <!-- Video Preview (shown after file selection) --> |
|
216 | 217 | </div> |
217 | 218 |
|
218 | 219 | <!-- Network Selection --> |
219 | | - <div class="flex items-center justify-between gap-4 mb-6"> |
| 220 | + <div |
| 221 | + class="flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3 sm:gap-4 mb-6" |
| 222 | + > |
220 | 223 | <div> |
221 | 224 | <label |
222 | | - class="block text-sm font-medium text-slate-700 mb-1" |
| 225 | + class="block text-sm font-medium text-slate-700 mb-0.5 sm:mb-1" |
223 | 226 | > |
224 | 227 | Quality Model |
225 | 228 | </label> |
|
228 | 231 | </p> |
229 | 232 | </div> |
230 | 233 | <div |
231 | | - class="inline-flex items-center gap-1 rounded-lg bg-slate-100 p-1" |
| 234 | + class="inline-flex items-center gap-0.5 sm:gap-1 rounded-lg bg-slate-100 p-1 self-start sm:self-auto" |
232 | 235 | id="networkToggle" |
233 | 236 | > |
234 | 237 | <button |
235 | 238 | type="button" |
236 | 239 | data-network="small" |
237 | | - class="rounded-md px-3 py-1.5 text-sm font-medium text-slate-600 transition-all duration-150" |
| 240 | + class="rounded-md px-2.5 sm:px-3 py-1.5 text-xs sm:text-sm font-medium text-slate-600 transition-all duration-150" |
238 | 241 | > |
239 | 242 | Fast |
240 | 243 | </button> |
241 | 244 | <button |
242 | 245 | type="button" |
243 | 246 | data-network="medium" |
244 | | - class="rounded-md px-3 py-1.5 text-sm font-medium bg-slate-800 text-white shadow-sm transition-all duration-150" |
| 247 | + class="rounded-md px-2.5 sm:px-3 py-1.5 text-xs sm:text-sm font-medium bg-slate-800 text-white shadow-sm transition-all duration-150" |
245 | 248 | > |
246 | 249 | Balanced |
247 | 250 | </button> |
248 | 251 | <button |
249 | 252 | type="button" |
250 | 253 | data-network="large" |
251 | | - class="rounded-md px-3 py-1.5 text-sm font-medium text-slate-600 transition-all duration-150" |
| 254 | + class="rounded-md px-2.5 sm:px-3 py-1.5 text-xs sm:text-sm font-medium text-slate-600 transition-all duration-150" |
252 | 255 | > |
253 | 256 | Quality |
254 | 257 | </button> |
|
375 | 378 | </div> |
376 | 379 |
|
377 | 380 | <!-- File Info --> |
378 | | - <div class="grid grid-cols-3 gap-3 mb-5 text-center"> |
| 381 | + <div |
| 382 | + class="grid grid-cols-3 gap-2 sm:gap-3 mb-5 text-center" |
| 383 | + > |
379 | 384 | <div |
380 | | - class="bg-white rounded-lg px-3 py-3 border border-slate-200" |
| 385 | + class="bg-white rounded-lg px-2 sm:px-3 py-2.5 sm:py-3 border border-slate-200" |
381 | 386 | > |
382 | | - <div class="text-xs text-slate-400 mb-1"> |
| 387 | + <div |
| 388 | + class="text-[10px] sm:text-xs text-slate-400 mb-0.5 sm:mb-1" |
| 389 | + > |
383 | 390 | Original |
384 | 391 | </div> |
385 | 392 | <div |
386 | | - class="text-sm font-medium text-slate-700" |
| 393 | + class="text-xs sm:text-sm font-medium text-slate-700" |
387 | 394 | id="originalVideoSize" |
388 | 395 | > |
389 | 396 | - |
390 | 397 | </div> |
391 | 398 | </div> |
392 | 399 | <div |
393 | | - class="bg-white rounded-lg px-3 py-3 border border-slate-200" |
| 400 | + class="bg-white rounded-lg px-2 sm:px-3 py-2.5 sm:py-3 border border-slate-200" |
394 | 401 | > |
395 | | - <div class="text-xs text-slate-400 mb-1"> |
| 402 | + <div |
| 403 | + class="text-[10px] sm:text-xs text-slate-400 mb-0.5 sm:mb-1" |
| 404 | + > |
396 | 405 | Upscaled |
397 | 406 | </div> |
398 | 407 | <div |
399 | | - class="text-sm font-medium text-slate-700" |
| 408 | + class="text-xs sm:text-sm font-medium text-slate-700" |
400 | 409 | id="resultVideoSize" |
401 | 410 | > |
402 | 411 | - |
403 | 412 | </div> |
404 | 413 | </div> |
405 | 414 | <div |
406 | | - class="bg-white rounded-lg px-3 py-3 border border-slate-200" |
| 415 | + class="bg-white rounded-lg px-2 sm:px-3 py-2.5 sm:py-3 border border-slate-200" |
407 | 416 | > |
408 | | - <div class="text-xs text-slate-400 mb-1"> |
| 417 | + <div |
| 418 | + class="text-[10px] sm:text-xs text-slate-400 mb-0.5 sm:mb-1" |
| 419 | + > |
409 | 420 | Backend |
410 | 421 | </div> |
411 | 422 | <div |
412 | | - class="text-sm font-medium text-slate-700" |
| 423 | + class="text-xs sm:text-sm font-medium text-slate-700" |
413 | 424 | id="backendVideoInfo" |
414 | 425 | > |
415 | 426 | - |
|
466 | 477 | <!-- Footer --> |
467 | 478 | <footer class="w-full border-t border-slate-200 bg-white"> |
468 | 479 | <div |
469 | | - class="max-w-4xl mx-auto px-4 sm:px-6 py-4 flex items-center justify-between text-sm text-slate-500" |
| 480 | + class="max-w-4xl mx-auto px-4 sm:px-6 py-3 sm:py-4 flex flex-col sm:flex-row items-center justify-center sm:justify-between gap-1 sm:gap-0 text-xs sm:text-sm text-slate-500" |
470 | 481 | > |
471 | 482 | <span>Powered by WebGPU / WebGL</span> |
472 | 483 | <span |
|
0 commit comments