Skip to content

Commit 9d32720

Browse files
committed
🧑‍💻💡 added comments to source code for a better developer experience
1 parent 1486dd2 commit 9d32720

File tree

14 files changed

+660
-211
lines changed

14 files changed

+660
-211
lines changed

css/error.css

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1+
/* Import Google Fonts - Outfit font family */
12
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;700;900&display=swap');
23

34
html,
45
body {
56
height: 100%;
67
}
78

9+
/* Center content vertically and horizontally */
810
body {
911
font-family: 'Outfit', sans-serif;
1012
background: var(--color-bg);
@@ -16,6 +18,7 @@ body {
1618
overflow-x: hidden;
1719
}
1820

21+
/* Create two floating gradient blobs for visual interest */
1922
body::before,
2023
body::after {
2124
content: '';
@@ -30,20 +33,23 @@ body::after {
3033
z-index: 0;
3134
}
3235

36+
/* Top-left blob with red gradient */
3337
body::before {
3438
top: -10vmin;
3539
left: -10vmin;
3640
background: radial-gradient(closest-side, rgba(220, 38, 38, 0.35), transparent 70%);
3741
animation: float-a 18s ease-in-out infinite;
3842
}
3943

44+
/* Bottom-right blob with red gradient */
4045
body::after {
4146
bottom: -12vmin;
4247
right: -12vmin;
4348
background: radial-gradient(closest-side, rgba(220, 38, 38, 0.25), transparent 70%);
4449
animation: float-b 22s ease-in-out infinite;
4550
}
4651

52+
/* Floating animation for top-left blob */
4753
@keyframes float-a {
4854

4955
0%,
@@ -56,6 +62,7 @@ body::after {
5662
}
5763
}
5864

65+
/* Floating animation for bottom-right blob */
5966
@keyframes float-b {
6067

6168
0%,
@@ -68,6 +75,7 @@ body::after {
6875
}
6976
}
7077

78+
/* Glass morphism container with backdrop blur */
7179
.container {
7280
position: relative;
7381
z-index: 1;
@@ -83,6 +91,7 @@ body::after {
8391
animation: fadeInUp 0.7s ease-out both;
8492
}
8593

94+
/* Fade in and slide up animation for container */
8695
@keyframes fadeInUp {
8796
from {
8897
opacity: 0;
@@ -95,6 +104,7 @@ body::after {
95104
}
96105
}
97106

107+
/* StreamIt logo with red glow effect */
98108
.logo {
99109
width: 96px;
100110
height: 96px;
@@ -104,11 +114,13 @@ body::after {
104114
filter: drop-shadow(0 0 12px rgba(220, 38, 38, 0.35));
105115
}
106116

117+
/* Spacing adjustments for error elements */
107118
h1+.error-message,
108119
.code-badge+h1 {
109120
margin-top: 0.5rem;
110121
}
111122

123+
/* Error code badge (e.g., 404, 403) */
112124
.code-badge {
113125
display: inline-block;
114126
margin: 0.25rem auto 0.25rem auto;
@@ -124,6 +136,7 @@ h1+.error-message,
124136
box-shadow: 0 10px 25px rgba(220, 38, 38, 0.15);
125137
}
126138

139+
/* Main error title with gradient text */
127140
h1 {
128141
margin: 0 0 0.75rem 0;
129142
font-size: clamp(2rem, 4.5vw, 3rem);
@@ -136,6 +149,7 @@ h1 {
136149
color: transparent;
137150
}
138151

152+
/* Error message description text */
139153
.error-message {
140154
margin: 0 auto 1.5rem auto;
141155
max-width: 48ch;
@@ -144,6 +158,7 @@ h1 {
144158
line-height: 1.6;
145159
}
146160

161+
/* Back to home button with smooth transitions */
147162
.back-btn {
148163
display: inline-flex;
149164
align-items: center;
@@ -161,24 +176,15 @@ h1 {
161176
transition: transform 0.2s ease, background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
162177
}
163178

179+
/* Hover state - red background with lift effect */
164180
.back-btn:hover {
165181
background: var(--color-primary);
166182
color: #ffffff;
167183
transform: translateY(-2px) scale(1.02);
168184
box-shadow: 0 10px 30px rgba(220, 38, 38, 0.35);
169185
}
170186

187+
/* Active/pressed state - slight scale down */
171188
.back-btn:active {
172189
transform: translateY(0) scale(0.99);
173-
}
174-
175-
@media (max-width: 480px) {
176-
.container {
177-
padding: 2.25rem 1.5rem;
178-
}
179-
180-
.logo {
181-
width: 84px;
182-
height: 84px;
183-
}
184190
}

css/responsive.css

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,100 +1,120 @@
11
@media (max-width: 640px) {
2+
/* Reduce navigation padding on mobile */
23
.glass-nav .container {
34
padding-left: 1rem;
45
padding-right: 1rem;
56
}
67

8+
/* Reduce logo size for mobile */
79
#navbar .text-3xl {
810
font-size: 1.5rem;
911
}
1012

13+
/* Mobile menu panel background */
1114
#mobileMenuPanel {
1215
background-color: #000000 !important;
1316
}
1417

18+
/* Slide in mobile menu when active */
1519
#mobileMenuPanel.active {
1620
transform: translate(0);
1721
}
1822

23+
/* Transparent background for mobile menu buttons */
1924
#mobileMenuPanel button {
2025
background-color: transparent !important;
2126
}
2227

28+
/* Show mobile search panel when active */
2329
#mobileSearchPanel.active {
2430
display: block;
2531
}
2632

33+
/* Hero section height and alignment on mobile */
2734
#heroSection {
2835
min-height: 85vh;
2936
align-items: center;
3037
}
3138

39+
/* Add vertical padding to hero container */
3240
#heroSection .container {
3341
padding-top: 6rem;
3442
padding-bottom: 4rem;
3543
}
3644

45+
/* Reduce hero title size for mobile readability */
3746
#heroTitle {
3847
font-size: 2.5rem !important;
3948
line-height: 1.1;
4049
margin-bottom: 1rem;
4150
}
4251

52+
/* Adjust hero description for mobile */
4353
#heroDesc {
4454
font-size: 1rem;
4555
line-clamp: 4;
4656
-webkit-line-clamp: 4;
4757
margin-bottom: 1.5rem;
4858
}
4959

60+
/* Stack hero buttons vertically on mobile */
5061
#heroSection .flex.gap-5 {
5162
flex-direction: column;
5263
gap: 1rem;
5364
width: 100%;
5465
}
5566

67+
/* Full-width buttons with centered text */
5668
#heroSection button {
5769
width: 100%;
5870
justify-content: center;
5971
padding: 1rem;
6072
}
6173

74+
/* Stack filter controls vertically on mobile */
6275
#filterSection .flex-wrap {
6376
flex-direction: column;
6477
align-items: stretch;
6578
}
6679

80+
/* Full-width filter inputs on mobile */
6781
#filterSection select,
6882
#filterSection input {
6983
width: 100% !important;
7084
}
7185

86+
/* Reduce details overlay title size for mobile */
7287
#detailsOverlay h1 {
7388
font-size: 2.2rem !important;
7489
line-height: 1.2;
7590
}
7691

92+
/* Increase spacing in details overlay */
7793
#detailsOverlay .flex-col {
7894
gap: 2rem;
7995
}
8096

97+
/* Stack episode items vertically on mobile */
8198
.episode-item {
8299
flex-direction: column;
83100
align-items: flex-start;
84101
gap: 1rem;
85102
}
86103

104+
/* Full-width episode thumbnail container */
87105
.episode-item>div:first-child {
88106
width: 100%;
89107
}
90108

109+
/* Responsive episode thumbnail with 16:9 aspect ratio */
91110
.episode-item img {
92111
width: 100%;
93112
height: auto;
94113
aspect-ratio: 16/9;
95114
object-fit: cover;
96115
}
97116

117+
/* Center dropdowns on mobile with fixed positioning */
98118
#notifDropdown,
99119
#settingsDropdown {
100120
position: fixed;
@@ -106,6 +126,7 @@
106126
z-index: 60;
107127
}
108128

129+
/* Show and animate dropdowns when active */
109130
#notifDropdown.active,
110131
#settingsDropdown.active {
111132
transform: translateX(-50%) scale(1);
@@ -115,11 +136,77 @@
115136
}
116137

117138
@media (min-width: 641px) and (max-width: 1024px) {
139+
/* Adjust hero title size for tablets */
118140
#heroTitle {
119141
font-size: 4rem !important;
120142
}
121143

144+
/* Increase top padding for hero section on tablets */
122145
#heroSection .container {
123146
padding-top: 8rem;
124147
}
148+
}
149+
150+
/* Video player mobile screen adjustments (max 768px) */
151+
@media (max-width: 768px) {
152+
#videoTitleOverlay {
153+
padding: 1.5rem;
154+
}
155+
156+
#videoMainTitle {
157+
font-size: 1.5rem;
158+
}
159+
160+
#videoSeriesInfo {
161+
font-size: 0.75rem;
162+
}
163+
164+
#videoControls {
165+
font-size: 0.875rem;
166+
}
167+
168+
#playPauseBtn i {
169+
font-size: 1.5rem;
170+
}
171+
172+
#rewindBtn i,
173+
#forwardBtn i,
174+
#volumeBtn i,
175+
#fullscreenBtn i,
176+
#qualityBtn i {
177+
font-size: 1rem;
178+
}
179+
180+
#videoControls > div:last-child {
181+
padding-left: 1rem;
182+
padding-right: 1rem;
183+
}
184+
185+
#progressContainer {
186+
padding-left: 1rem;
187+
padding-right: 1rem;
188+
}
189+
190+
/* Hide speed and quality buttons on mobile - limited screen space */
191+
#speedBtn,
192+
#qualityBtn {
193+
display: none;
194+
}
195+
196+
/* Volume slider hidden on mobile - takes too much space */
197+
#volumeSlider {
198+
display: none;
199+
}
200+
}
201+
202+
/* Error page mobile adjustments for smaller screens */
203+
@media (max-width: 480px) {
204+
.container {
205+
padding: 2.25rem 1.5rem;
206+
}
207+
208+
.logo {
209+
width: 84px;
210+
height: 84px;
211+
}
125212
}

0 commit comments

Comments
 (0)