d10g commited on
Commit
942e531
·
1 Parent(s): 83802ae

Added leaderboard preview

Browse files
Files changed (2) hide show
  1. index.html +88 -0
  2. style.css +274 -0
index.html CHANGED
@@ -47,6 +47,94 @@
47
  </div>
48
  </section>
49
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
  <section class="features">
51
  <div class="container">
52
  <h2>Features</h2>
 
47
  </div>
48
  </section>
49
 
50
+ <section class="leaderboard-demo">
51
+ <div class="container">
52
+ <h2>Live Race Dashboard</h2>
53
+ <p class="section-intro">Track race positions in real-time with our integrated live leaderboard</p>
54
+
55
+ <div class="demo-leaderboard">
56
+ <div class="demo-leaderboard-header">
57
+ <h3>🏁 Live Leaderboard</h3>
58
+ <span class="demo-badge">Live Preview</span>
59
+ </div>
60
+
61
+ <div class="demo-leaderboard-content">
62
+ <div class="demo-position-item position-1">
63
+ <div class="demo-position-number">1</div>
64
+ <div class="demo-driver-name">Max VERSTAPPEN</div>
65
+ <div class="demo-gap leader">Leader</div>
66
+ <div class="demo-tire">
67
+ <div class="demo-tire-badge soft">S</div>
68
+ </div>
69
+ </div>
70
+
71
+ <div class="demo-position-item position-2">
72
+ <div class="demo-position-number">2</div>
73
+ <div class="demo-driver-name">Lewis HAMILTON</div>
74
+ <div class="demo-gap">+2.345s</div>
75
+ <div class="demo-tire">
76
+ <div class="demo-tire-badge medium">M</div>
77
+ </div>
78
+ </div>
79
+
80
+ <div class="demo-position-item position-3">
81
+ <div class="demo-position-number">3</div>
82
+ <div class="demo-driver-name">Charles LECLERC</div>
83
+ <div class="demo-gap">+5.891s</div>
84
+ <div class="demo-tire">
85
+ <div class="demo-tire-badge soft">S</div>
86
+ </div>
87
+ </div>
88
+
89
+ <div class="demo-position-item">
90
+ <div class="demo-position-number">4</div>
91
+ <div class="demo-driver-name">Sergio PEREZ</div>
92
+ <div class="demo-gap">+8.234s</div>
93
+ <div class="demo-tire">
94
+ <div class="demo-tire-badge hard">H</div>
95
+ </div>
96
+ </div>
97
+
98
+ <div class="demo-position-item">
99
+ <div class="demo-position-number">5</div>
100
+ <div class="demo-driver-name">Carlos SAINZ</div>
101
+ <div class="demo-gap">+12.567s</div>
102
+ <div class="demo-tire">
103
+ <div class="demo-tire-badge medium">M</div>
104
+ </div>
105
+ </div>
106
+ </div>
107
+
108
+ <div class="demo-leaderboard-footer">
109
+ <p>Updates in real-time during race playback</p>
110
+ </div>
111
+ </div>
112
+
113
+ <div class="dashboard-features">
114
+ <div class="dashboard-feature">
115
+ <span class="feature-emoji">🏆</span>
116
+ <h4>Podium Highlighting</h4>
117
+ <p>Gold, silver, and bronze styling for top 3 positions</p>
118
+ </div>
119
+ <div class="dashboard-feature">
120
+ <span class="feature-emoji">🔴</span>
121
+ <h4>Tire Strategy</h4>
122
+ <p>Color-coded tire compounds (Soft/Medium/Hard)</p>
123
+ </div>
124
+ <div class="dashboard-feature">
125
+ <span class="feature-emoji">⏱️</span>
126
+ <h4>Live Gaps</h4>
127
+ <p>Real-time time differences to race leader</p>
128
+ </div>
129
+ <div class="dashboard-feature">
130
+ <span class="feature-emoji">📊</span>
131
+ <h4>Full Dashboard</h4>
132
+ <p>Detailed view with pit stops, fastest laps, and events</p>
133
+ </div>
134
+ </div>
135
+ </div>
136
+ </section>
137
+
138
  <section class="features">
139
  <div class="container">
140
  <h2>Features</h2>
style.css CHANGED
@@ -678,3 +678,277 @@ html {
678
  .credit-item {
679
  animation: fadeIn 0.6s ease-out;
680
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
678
  .credit-item {
679
  animation: fadeIn 0.6s ease-out;
680
  }
681
+
682
+ /* Leaderboard Demo Section */
683
+ .leaderboard-demo {
684
+ background: linear-gradient(135deg, #15151e 0%, #1a1a24 100%);
685
+ color: white;
686
+ }
687
+
688
+ .leaderboard-demo h2 {
689
+ color: white;
690
+ }
691
+
692
+ .leaderboard-demo .section-intro {
693
+ color: rgba(255, 255, 255, 0.8);
694
+ }
695
+
696
+ .demo-leaderboard {
697
+ max-width: 700px;
698
+ margin: 0 auto 50px;
699
+ background: rgba(26, 26, 36, 0.8);
700
+ border: 2px solid #e10600;
701
+ border-radius: 12px;
702
+ overflow: hidden;
703
+ box-shadow: 0 8px 32px rgba(225, 6, 0, 0.3);
704
+ }
705
+
706
+ .demo-leaderboard-header {
707
+ background: rgba(225, 6, 0, 0.1);
708
+ padding: 20px 30px;
709
+ border-bottom: 2px solid #e10600;
710
+ display: flex;
711
+ justify-content: space-between;
712
+ align-items: center;
713
+ }
714
+
715
+ .demo-leaderboard-header h3 {
716
+ font-size: 1.5rem;
717
+ margin: 0;
718
+ color: #e10600;
719
+ }
720
+
721
+ .demo-badge {
722
+ background: #e10600;
723
+ color: white;
724
+ padding: 6px 16px;
725
+ border-radius: 20px;
726
+ font-size: 0.85rem;
727
+ font-weight: 600;
728
+ animation: pulse-badge 2s infinite;
729
+ }
730
+
731
+ @keyframes pulse-badge {
732
+ 0%, 100% {
733
+ opacity: 1;
734
+ transform: scale(1);
735
+ }
736
+ 50% {
737
+ opacity: 0.8;
738
+ transform: scale(1.05);
739
+ }
740
+ }
741
+
742
+ .demo-leaderboard-content {
743
+ padding: 20px;
744
+ }
745
+
746
+ .demo-position-item {
747
+ display: grid;
748
+ grid-template-columns: 50px 1fr 100px 60px;
749
+ align-items: center;
750
+ gap: 15px;
751
+ padding: 15px 20px;
752
+ margin-bottom: 10px;
753
+ background: rgba(255, 255, 255, 0.05);
754
+ border-left: 4px solid #e10600;
755
+ border-radius: 8px;
756
+ transition: all 0.3s ease;
757
+ }
758
+
759
+ .demo-position-item:hover {
760
+ background: rgba(255, 255, 255, 0.1);
761
+ transform: translateX(8px);
762
+ }
763
+
764
+ .demo-position-item:last-child {
765
+ margin-bottom: 0;
766
+ }
767
+
768
+ .demo-position-item.position-1 {
769
+ border-left-color: #ffd700;
770
+ background: rgba(255, 215, 0, 0.15);
771
+ }
772
+
773
+ .demo-position-item.position-2 {
774
+ border-left-color: #c0c0c0;
775
+ background: rgba(192, 192, 192, 0.15);
776
+ }
777
+
778
+ .demo-position-item.position-3 {
779
+ border-left-color: #cd7f32;
780
+ background: rgba(205, 127, 50, 0.15);
781
+ }
782
+
783
+ .demo-position-number {
784
+ font-size: 2rem;
785
+ font-weight: 700;
786
+ text-align: center;
787
+ color: #e10600;
788
+ }
789
+
790
+ .position-1 .demo-position-number {
791
+ color: #ffd700;
792
+ text-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
793
+ }
794
+
795
+ .position-2 .demo-position-number {
796
+ color: #c0c0c0;
797
+ text-shadow: 0 0 10px rgba(192, 192, 192, 0.5);
798
+ }
799
+
800
+ .position-3 .demo-position-number {
801
+ color: #cd7f32;
802
+ text-shadow: 0 0 10px rgba(205, 127, 50, 0.5);
803
+ }
804
+
805
+ .demo-driver-name {
806
+ font-size: 1.1rem;
807
+ font-weight: 600;
808
+ color: white;
809
+ }
810
+
811
+ .demo-gap {
812
+ font-size: 0.95rem;
813
+ text-align: right;
814
+ color: #b0b0b0;
815
+ font-family: 'Courier New', monospace;
816
+ }
817
+
818
+ .demo-gap.leader {
819
+ color: #00d25b;
820
+ font-weight: 700;
821
+ }
822
+
823
+ .demo-tire {
824
+ display: flex;
825
+ justify-content: center;
826
+ }
827
+
828
+ .demo-tire-badge {
829
+ width: 36px;
830
+ height: 36px;
831
+ border-radius: 50%;
832
+ display: flex;
833
+ align-items: center;
834
+ justify-content: center;
835
+ font-weight: 700;
836
+ font-size: 0.9rem;
837
+ border: 2px solid rgba(255, 255, 255, 0.2);
838
+ }
839
+
840
+ .demo-tire-badge.soft {
841
+ background: #ff1e1e;
842
+ color: white;
843
+ box-shadow: 0 0 10px rgba(255, 30, 30, 0.5);
844
+ }
845
+
846
+ .demo-tire-badge.medium {
847
+ background: #ffd700;
848
+ color: black;
849
+ box-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
850
+ }
851
+
852
+ .demo-tire-badge.hard {
853
+ background: #ffffff;
854
+ color: black;
855
+ box-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
856
+ }
857
+
858
+ .demo-leaderboard-footer {
859
+ background: rgba(225, 6, 0, 0.1);
860
+ padding: 15px 30px;
861
+ border-top: 2px solid #e10600;
862
+ text-align: center;
863
+ }
864
+
865
+ .demo-leaderboard-footer p {
866
+ margin: 0;
867
+ color: rgba(255, 255, 255, 0.7);
868
+ font-size: 0.9rem;
869
+ font-style: italic;
870
+ }
871
+
872
+ /* Dashboard Features Grid */
873
+ .dashboard-features {
874
+ display: grid;
875
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
876
+ gap: 25px;
877
+ max-width: 900px;
878
+ margin: 0 auto;
879
+ }
880
+
881
+ .dashboard-feature {
882
+ background: rgba(255, 255, 255, 0.05);
883
+ padding: 25px;
884
+ border-radius: 12px;
885
+ text-align: center;
886
+ border: 1px solid rgba(255, 255, 255, 0.1);
887
+ transition: all 0.3s ease;
888
+ }
889
+
890
+ .dashboard-feature:hover {
891
+ background: rgba(255, 255, 255, 0.1);
892
+ transform: translateY(-5px);
893
+ border-color: #e10600;
894
+ }
895
+
896
+ .feature-emoji {
897
+ font-size: 2.5rem;
898
+ display: block;
899
+ margin-bottom: 15px;
900
+ }
901
+
902
+ .dashboard-feature h4 {
903
+ font-size: 1.2rem;
904
+ margin-bottom: 10px;
905
+ color: white;
906
+ }
907
+
908
+ .dashboard-feature p {
909
+ color: rgba(255, 255, 255, 0.7);
910
+ font-size: 0.95rem;
911
+ line-height: 1.6;
912
+ }
913
+
914
+ /* Responsive Design for Leaderboard Demo */
915
+ @media (max-width: 768px) {
916
+ .demo-position-item {
917
+ grid-template-columns: 40px 1fr 90px;
918
+ gap: 10px;
919
+ padding: 12px 15px;
920
+ }
921
+
922
+ .demo-tire {
923
+ display: none;
924
+ }
925
+
926
+ .demo-position-number {
927
+ font-size: 1.5rem;
928
+ }
929
+
930
+ .demo-driver-name {
931
+ font-size: 1rem;
932
+ }
933
+
934
+ .demo-gap {
935
+ font-size: 0.85rem;
936
+ }
937
+
938
+ .demo-leaderboard-header {
939
+ padding: 15px 20px;
940
+ }
941
+
942
+ .demo-leaderboard-header h3 {
943
+ font-size: 1.2rem;
944
+ }
945
+
946
+ .demo-badge {
947
+ font-size: 0.75rem;
948
+ padding: 4px 12px;
949
+ }
950
+
951
+ .dashboard-features {
952
+ grid-template-columns: 1fr;
953
+ }
954
+ }