|
54 | 54 | margin-bottom: 40px; |
55 | 55 | } |
56 | 56 |
|
| 57 | +.title-filter-container { |
| 58 | + display: flex; |
| 59 | + align-items: center; |
| 60 | + justify-content: center; |
| 61 | + flex-wrap: wrap; |
| 62 | + gap: 16px; |
| 63 | + margin-bottom: 24px; |
| 64 | +} |
| 65 | + |
57 | 66 | .top-performers-title { |
58 | 67 | font-size: 24px; |
59 | 68 | font-weight: 700; |
60 | | - margin-bottom: 24px; |
| 69 | + margin: 0; |
61 | 70 | } |
62 | 71 |
|
63 | 72 | .light .top-performers-title { |
|
68 | 77 | color: #f1f1f1; |
69 | 78 | } |
70 | 79 |
|
| 80 | +.top-title-filter { |
| 81 | + display: flex; |
| 82 | + align-items: center; |
| 83 | + gap: 8px; |
| 84 | + min-width: 240px; |
| 85 | +} |
| 86 | + |
| 87 | +.filter-label { |
| 88 | + font-size: 14px; |
| 89 | + font-weight: 600; |
| 90 | + white-space: nowrap; |
| 91 | +} |
| 92 | + |
| 93 | +.light .filter-label { |
| 94 | + color: #4b5563; |
| 95 | +} |
| 96 | + |
| 97 | +.dark .filter-label { |
| 98 | + color: #d1d5db; |
| 99 | +} |
| 100 | + |
71 | 101 | .top-performers-grid { |
72 | 102 | display: grid; |
73 | 103 | grid-template-columns: 1fr 1fr 1fr; |
|
253 | 283 | color: #aaa; |
254 | 284 | } |
255 | 285 |
|
256 | | -/* Search */ |
| 286 | +/* Search and Filter */ |
257 | 287 | .search-container { |
258 | 288 | display: flex; |
259 | 289 | justify-content: center; |
| 290 | + flex-wrap: wrap; |
| 291 | + gap: 16px; |
260 | 292 | margin-bottom: 40px; |
261 | 293 | } |
262 | 294 |
|
|
266 | 298 | max-width: 500px; |
267 | 299 | } |
268 | 300 |
|
| 301 | +.time-filter-wrapper { |
| 302 | + position: relative; |
| 303 | + min-width: 150px; |
| 304 | +} |
| 305 | + |
269 | 306 | .search-icon { |
270 | 307 | position: absolute; |
271 | 308 | top: 50%; |
|
298 | 335 | .dark .search-input { |
299 | 336 | background: #2b303b; |
300 | 337 | border: 1px solid #444; |
| 338 | +} |
| 339 | + |
| 340 | +.time-filter-wrapper { |
| 341 | + position: relative; |
| 342 | + min-width: 180px; |
| 343 | +} |
| 344 | + |
| 345 | +@keyframes select-pulse { |
| 346 | + 0% { border-color: #6366f1; box-shadow: 0 0 0 0 rgba(99, 102, 241, 0.4); } |
| 347 | + 70% { border-color: #6366f1; box-shadow: 0 0 0 6px rgba(99, 102, 241, 0); } |
| 348 | + 100% { border-color: inherit; } |
| 349 | +} |
| 350 | + |
| 351 | +.time-filter-select.highlight-change { |
| 352 | + animation: select-pulse 1.2s ease-out; |
| 353 | +} |
| 354 | + |
| 355 | +.time-filter-wrapper::after { |
| 356 | + content: ''; |
| 357 | + position: absolute; |
| 358 | + right: 15px; |
| 359 | + top: 50%; |
| 360 | + transform: translateY(-50%); |
| 361 | + width: 0; |
| 362 | + height: 0; |
| 363 | + border-left: 6px solid transparent; |
| 364 | + border-right: 6px solid transparent; |
| 365 | + border-top: 6px solid #6366f1; |
| 366 | + pointer-events: none; |
| 367 | + transition: transform 0.2s ease; |
| 368 | +} |
| 369 | + |
| 370 | +.time-filter-wrapper:hover::after { |
| 371 | + transform: translateY(-50%) translateY(2px); |
| 372 | +} |
| 373 | + |
| 374 | +.time-filter-select { |
| 375 | + width: 100%; |
| 376 | + padding: 12px 40px 12px 18px; |
| 377 | + border-radius: 12px; |
| 378 | + font-size: 15px; |
| 379 | + font-weight: 600; |
| 380 | + letter-spacing: 0.3px; |
| 381 | + appearance: none; |
| 382 | + background: linear-gradient(to bottom, rgba(255,255,255,0.05) 0%, rgba(0,0,0,0.05) 100%); |
| 383 | + cursor: pointer; |
| 384 | + transition: all 0.25s ease; |
| 385 | + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); |
| 386 | + border: 2px solid transparent; |
| 387 | +} |
| 388 | + |
| 389 | +.time-filter-select:hover { |
| 390 | + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12); |
| 391 | + transform: translateY(-2px); |
| 392 | + background-position: right 15px center; |
| 393 | +} |
| 394 | + |
| 395 | +.time-filter-select:focus { |
| 396 | + outline: none; |
| 397 | + border-color: #6366f1; |
| 398 | + box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.25); |
| 399 | +} |
| 400 | + |
| 401 | +.light .time-filter-select { |
| 402 | + background-color: #fff; |
| 403 | + color: #333; |
| 404 | + border: 2px solid #e5e7eb; |
| 405 | + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); |
| 406 | +} |
| 407 | + |
| 408 | +.light .time-filter-wrapper::after { |
| 409 | + border-top-color: #6366f1; |
| 410 | +} |
| 411 | + |
| 412 | +.dark .time-filter-select { |
| 413 | + background-color: #2d3748; |
301 | 414 | color: #f1f1f1; |
| 415 | + border: 2px solid #4b5563; |
| 416 | + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); |
| 417 | +} |
| 418 | + |
| 419 | +.dark .time-filter-wrapper::after { |
| 420 | + border-top-color: #8b5cf6; |
302 | 421 | } |
303 | 422 |
|
304 | 423 | /* Contributors List */ |
|
476 | 595 | display: flex; |
477 | 596 | justify-content: center; |
478 | 597 | align-items: center; |
479 | | - gap: 8px; |
| 598 | + gap: 12px; |
480 | 599 | padding: 24px 0; |
| 600 | + margin-top: 16px; |
| 601 | + border-top: 1px solid rgba(0, 0, 0, 0.1); |
| 602 | +} |
| 603 | + |
| 604 | +.light .pagination { |
| 605 | + background-color: #f9fafb; |
| 606 | + border-top: 1px solid #e5e7eb; |
| 607 | + border-bottom-left-radius: 12px; |
| 608 | + border-bottom-right-radius: 12px; |
| 609 | + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02); |
| 610 | +} |
| 611 | + |
| 612 | +.dark .pagination { |
| 613 | + border-top: 1px solid rgba(255, 255, 255, 0.1); |
| 614 | + background-color: #1e293b; |
| 615 | + border-bottom-left-radius: 12px; |
| 616 | + border-bottom-right-radius: 12px; |
481 | 617 | } |
482 | 618 |
|
483 | 619 | .pagination-btn { |
484 | 620 | display: flex; |
485 | 621 | justify-content: center; |
486 | 622 | align-items: center; |
487 | | - width: 40px; |
488 | | - height: 40px; |
| 623 | + width: 44px; |
| 624 | + height: 44px; |
489 | 625 | border-radius: 50%; |
490 | | - border: none; |
| 626 | + border: 2px solid transparent; |
491 | 627 | cursor: pointer; |
492 | 628 | transition: all 0.2s ease; |
| 629 | + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); |
493 | 630 | } |
494 | 631 |
|
495 | 632 | .light .pagination-btn { |
496 | | - background: #e5e7eb; |
497 | | - color: #6b7280; |
| 633 | + background: #836dff; |
| 634 | + color: #6366f1; |
| 635 | + border: 1px solid #006eff; |
498 | 636 | } |
499 | 637 |
|
500 | 638 | .dark .pagination-btn { |
501 | | - background: #374151; |
502 | | - color: #d1d5db; |
| 639 | + background: #2d3748; |
| 640 | + color: #8b5cf6; |
| 641 | + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25); |
| 642 | + border: 1px solid #4b5563; |
503 | 643 | } |
504 | 644 |
|
505 | 645 | .pagination-btn:hover:not(.disabled) { |
506 | | - background: #d1d5db; |
| 646 | + transform: translateY(-2px); |
| 647 | + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); |
| 648 | +} |
| 649 | + |
| 650 | +.light .pagination-btn:hover:not(.disabled) { |
| 651 | + background: #0080ff; |
| 652 | + border-color: #6366f1; |
| 653 | + color: #4338ca; |
507 | 654 | } |
508 | 655 |
|
509 | 656 | .dark .pagination-btn:hover:not(.disabled) { |
510 | | - background: #4b5563; |
| 657 | + background: #374151; |
| 658 | + border-color: #8b5cf6; |
| 659 | + color: #a78bfa; |
511 | 660 | } |
512 | 661 |
|
513 | 662 | .pagination-btn.disabled { |
514 | | - opacity: 0.5; |
| 663 | + opacity: 0.4; |
515 | 664 | cursor: not-allowed; |
| 665 | + box-shadow: none; |
516 | 666 | } |
517 | 667 |
|
518 | 668 | .page-btn { |
519 | 669 | display: flex; |
520 | 670 | justify-content: center; |
521 | 671 | align-items: center; |
522 | | - width: 36px; |
523 | | - height: 36px; |
524 | | - border-radius: 8px; |
525 | | - border: none; |
| 672 | + width: 40px; |
| 673 | + height: 40px; |
| 674 | + border-radius: 10px; |
| 675 | + border: 2px solid transparent; |
526 | 676 | cursor: pointer; |
527 | | - font-weight: bold; |
| 677 | + font-weight: 600; |
| 678 | + font-size: 15px; |
528 | 679 | transition: all 0.2s ease; |
529 | 680 | } |
530 | 681 |
|
531 | 682 | .light .page-btn { |
532 | | - background: transparent; |
533 | | - color: #666; |
| 683 | + background: #0044ff; |
| 684 | + color: #4b5563; |
| 685 | + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); |
| 686 | + border: 1px solid #e2e8f0; |
534 | 687 | } |
535 | 688 |
|
536 | 689 | .dark .page-btn { |
537 | | - background: transparent; |
538 | | - color: #b3b3b3; |
| 690 | + background: #2d3748; |
| 691 | + color: #e5e7eb; |
| 692 | + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); |
| 693 | + border: 1px solid #4b5563; |
539 | 694 | } |
540 | 695 |
|
541 | 696 | .page-btn:hover { |
542 | | - background: #e5e7eb; |
| 697 | + transform: translateY(-1px); |
| 698 | + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1); |
| 699 | +} |
| 700 | + |
| 701 | +.light .page-btn:hover { |
| 702 | + background: #0080ff; |
| 703 | + border-color: #6366f1; |
| 704 | + color: #4338ca; |
543 | 705 | } |
544 | 706 |
|
545 | 707 | .dark .page-btn:hover { |
546 | 708 | background: #374151; |
| 709 | + border-color: #8b5cf6; |
| 710 | + color: #a78bfa; |
547 | 711 | } |
548 | 712 |
|
549 | 713 | .page-btn.active { |
550 | | - background: #2563eb; |
| 714 | + background: #6366f1; |
551 | 715 | color: #fff; |
| 716 | + box-shadow: 0 3px 6px rgba(99, 102, 241, 0.4); |
| 717 | + transform: translateY(-1px); |
| 718 | + border-color: #6366f1; |
552 | 719 | } |
553 | 720 |
|
554 | 721 | .dark .page-btn.active { |
555 | | - background: #3b82f6; |
| 722 | + background: #8b5cf6; |
556 | 723 | color: #fff; |
| 724 | + box-shadow: 0 3px 6px rgba(139, 92, 246, 0.4); |
| 725 | + border-color: #8b5cf6; |
557 | 726 | } |
558 | 727 |
|
559 | 728 | .page-numbers { |
560 | 729 | display: flex; |
561 | | - gap: 8px; |
| 730 | + gap: 10px; |
562 | 731 | flex-wrap: wrap; |
563 | 732 | justify-content: center; |
| 733 | + align-items: center; |
| 734 | + padding: 0 8px; |
564 | 735 | } |
565 | 736 |
|
566 | 737 | /* Pagination ellipsis */ |
567 | 738 | .pagination-ellipsis { |
568 | 739 | display: flex; |
569 | 740 | justify-content: center; |
570 | 741 | align-items: center; |
571 | | - width: 36px; |
572 | | - height: 36px; |
| 742 | + width: 40px; |
| 743 | + height: 40px; |
573 | 744 | font-weight: bold; |
| 745 | + font-size: 18px; |
574 | 746 | user-select: none; |
575 | 747 | } |
576 | 748 |
|
577 | 749 | .light .pagination-ellipsis { |
578 | | - color: #666; |
| 750 | + color: #6366f1; |
| 751 | + opacity: 0.7; |
579 | 752 | } |
580 | 753 |
|
581 | 754 | .dark .pagination-ellipsis { |
582 | | - color: #b3b3b3; |
| 755 | + color: #8b5cf6; |
| 756 | + opacity: 0.8; |
583 | 757 | } |
584 | 758 |
|
585 | 759 | /* CTA Footer */ |
|
0 commit comments