Skip to content
This repository was archived by the owner on Jan 28, 2026. It is now read-only.

Commit 67f7ebb

Browse files
Merge branch 'Daniel-Frontend' into development
2 parents 3b819db + 4735722 commit 67f7ebb

17 files changed

Lines changed: 441 additions & 231 deletions

-r git branch -D

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
2+
SSUUMMMMAARRYY OOFF LLEESSSS CCOOMMMMAANNDDSS
3+
4+
Commands marked with * may be preceded by a number, _N.
5+
Notes in parentheses indicate the behavior if _N is given.
6+
A key preceded by a caret indicates the Ctrl key; thus ^K is ctrl-K.
7+
8+
h H Display this help.
9+
q :q Q :Q ZZ Exit.
10+
---------------------------------------------------------------------------
11+
12+
MMOOVVIINNGG
13+
14+
e ^E j ^N CR * Forward one line (or _N lines).
15+
y ^Y k ^K ^P * Backward one line (or _N lines).
16+
f ^F ^V SPACE * Forward one window (or _N lines).
17+
b ^B ESC-v * Backward one window (or _N lines).
18+
z * Forward one window (and set window to _N).
19+
w * Backward one window (and set window to _N).
20+
ESC-SPACE * Forward one window, but don't stop at end-of-file.
21+
d ^D * Forward one half-window (and set half-window to _N).
22+
u ^U * Backward one half-window (and set half-window to _N).
23+
ESC-) RightArrow * Right one half screen width (or _N positions).
24+
ESC-( LeftArrow * Left one half screen width (or _N positions).
25+
ESC-} ^RightArrow Right to last column displayed.
26+
ESC-{ ^LeftArrow Left to first column.
27+
F Forward forever; like "tail -f".
28+
ESC-F Like F but stop when search pattern is found.
29+
r ^R ^L Repaint screen.
30+
R Repaint screen, discarding buffered input.
31+
---------------------------------------------------
32+
Default "window" is the screen height.
33+
Default "half-window" is half of the screen height.
34+
---------------------------------------------------------------------------
35+
36+
SSEEAARRCCHHIINNGG
37+
38+
/_p_a_t_t_e_r_n * Search forward for (_N-th) matching line.
39+
?_p_a_t_t_e_r_n * Search backward for (_N-th) matching line.
40+
n * Repeat previous search (for _N-th occurrence).
41+
N * Repeat previous search in reverse direction.
42+
ESC-n * Repeat previous search, spanning files.
43+
ESC-N * Repeat previous search, reverse dir. & spanning files.
44+
ESC-u Undo (toggle) search highlighting.
45+
ESC-U Clear search highlighting.

frontend/src/assets/styles/about.module.css

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
font-size: var(--font-size-2xl);
5151
font-weight: bold;
5252
margin-bottom: var(--spacing-lg);
53-
color: var(--color-text-light);
53+
color: #fff !important;
5454
}
5555

5656
/* Common component styles */
@@ -71,24 +71,26 @@
7171
font-size: var(--font-size-lg);
7272
font-weight: bold;
7373
margin-bottom: var(--spacing-md);
74-
color: var(--color-text-light);
74+
color: #fff !important;
7575
}
7676

7777
.subTitle {
7878
font-size: var(--font-size-base);
7979
font-weight: bold;
8080
margin-top: var(--spacing-md);
8181
margin-bottom: var(--spacing-sm);
82+
color: #fff !important;
8283
}
8384

8485
.whatSparkDoesBox,
8586
.howToUseSparkBox,
8687
.disclaimerBox,
8788
.privacyPolicyBox {
88-
background-color: var(--color-background-light);
89+
background-color: var(--color-card-background) !important;
8990
border-radius: var(--border-radius-md);
9091
padding: var(--spacing-lg); /* General padding for all boxes */
9192
box-shadow: var(--shadow-sm);
93+
color: #fff !important;
9294
}
9395

9496
.whatSparkDoesBox {
@@ -101,15 +103,28 @@
101103
padding-bottom: var(--spacing-md); /* Reduce bottom padding */
102104
}
103105

106+
.whatSparkDoesBox ol,
107+
.whatSparkDoesBox ul {
108+
padding-left: 2rem; /* Add proper indentation */
109+
margin-top: var(--spacing-sm);
110+
margin-bottom: var(--spacing-md);
111+
}
112+
113+
.whatSparkDoesBox li {
114+
margin-bottom: var(--spacing-xs);
115+
list-style-position: outside; /* Ensure bullets/numbers are outside the content */
116+
}
117+
104118
.howToUseSparkBox ol,
105119
.howToUseSparkBox ul {
106-
padding-left: 0; /* Removed indent */
120+
padding-left: 2rem; /* Add proper indentation */
107121
margin-top: var(--spacing-sm);
108122
margin-bottom: var(--spacing-md);
109123
}
110124

111125
.howToUseSparkBox li {
112126
margin-bottom: var(--spacing-xs);
127+
list-style-position: outside; /* Ensure bullets/numbers are outside the content */
113128
}
114129

115130
.howToUseSparkBox p {
@@ -142,30 +157,35 @@
142157
font-size: var(--font-size-sm);
143158
line-height: 1.5;
144159
margin-bottom: var(--spacing-sm);
160+
color: #fff !important;
145161
}
146162

147163
.whatSparkDoesBox li strong {
148164
font-weight: bold;
165+
color: #fff !important;
149166
}
150167

151168
.impressumSection {
152-
background-color: var(--color-background-light);
169+
background-color: var(--color-card-background) !important;
153170
border-radius: var(--border-radius-md);
154171
padding: var(--spacing-lg);
155172
box-shadow: var(--shadow-sm);
156173
grid-column: 1 / -1; /* Span full width in grid */
157174
margin-top: var(--spacing-lg);
175+
color: #fff !important;
158176
}
159177

160178
.impressumTitle {
161179
font-size: var(--font-size-lg);
162180
font-weight: bold;
163181
margin-bottom: var(--spacing-md);
182+
color: #fff !important;
164183
}
165184

166185
.impressumText {
167186
font-size: var(--font-size-sm);
168187
line-height: 1.5;
188+
color: #fff !important;
169189
}
170190

171191
/* Responsive styles */

frontend/src/assets/styles/landing.module.css

Lines changed: 26 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -210,31 +210,6 @@
210210
}
211211
}
212212

213-
.worldMapBtnHeroTopRight {
214-
position: absolute;
215-
top: 2rem;
216-
right: 2rem;
217-
padding: 0.5rem 1.3rem;
218-
background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--primary-glow)));
219-
color: #fff;
220-
font-weight: 600;
221-
font-size: 1.1rem;
222-
border: none;
223-
border-radius: 0.5rem;
224-
box-shadow: 0 2px 8px rgba(102, 126, 234, 0.10);
225-
text-decoration: none;
226-
transition: background 0.2s, box-shadow 0.2s, transform 0.2s;
227-
display: inline-block;
228-
cursor: pointer;
229-
z-index: 10;
230-
}
231-
232-
.worldMapBtnHeroTopRight:hover {
233-
background: linear-gradient(90deg, hsl(var(--primary-glow)), hsl(var(--primary)));
234-
box-shadow: 0 4px 16px rgba(102, 126, 234, 0.16);
235-
transform: translateY(-2px) scale(1.04);
236-
}
237-
238213
.learnMoreBtnHero {
239214
margin-left: 1.2rem;
240215
padding: 0.45rem 1.1rem;
@@ -319,15 +294,15 @@
319294
}
320295

321296
.heroTitle {
322-
font-size: 3rem;
297+
font-size: 4.5rem;
323298
font-weight: 800;
324299
color: hsl(var(--primary));
325300
letter-spacing: 0.04em;
326301
}
327302

328303
.heroSubtitle {
329304
font-size: 1.25rem;
330-
color: var(--color-text-muted);
305+
color: #fff !important;
331306
margin-bottom: 2rem;
332307
line-height: 1.6;
333308
}
@@ -387,7 +362,6 @@
387362
display: flex;
388363
flex-direction: column;
389364
justify-content: center;
390-
background: var(--color-background-light);
391365
border-radius: 1.5rem;
392366
box-shadow: 0 2px 12px rgba(102, 126, 234, 0.06);
393367
padding: 2.5rem 1.5rem;
@@ -404,11 +378,12 @@
404378
font-size: 2rem;
405379
font-weight: 700;
406380
margin-bottom: 0.5rem;
381+
color: #fff !important;
407382
}
408383

409384
.featuresSubtitle {
410385
font-size: 1.1rem;
411-
color: var(--color-text-muted);
386+
color: #fff !important;
412387
max-width: 600px;
413388
margin: 0 auto;
414389
}
@@ -420,7 +395,7 @@
420395
max-width: 1100px;
421396
margin: 0 auto;
422397
justify-items: center;
423-
align-items: start;
398+
align-items: stretch; /* Make all items in a row the same height */
424399
}
425400

426401
@media (min-width: 700px) {
@@ -431,20 +406,22 @@
431406

432407
@media (min-width: 1100px) {
433408
.featuresGrid {
434-
grid-template-columns: repeat(3, 1fr);
409+
grid-template-columns: repeat(4, 1fr);
435410
}
436411
}
437412

438413
.featureCard {
439-
background: #fff;
440414
border-radius: 18px;
441415
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
442416
padding: 2rem 1.5rem 1.5rem 1.5rem;
443417
display: flex;
444418
flex-direction: column;
445419
align-items: center;
446420
transition: box-shadow 0.2s, transform 0.2s;
447-
border: 1px solid #f0f0f0;
421+
border: 2px solid #a259ff;
422+
color: #fff !important;
423+
height: auto; /* Let content determine height */
424+
justify-content: space-between;
448425
}
449426

450427
.featureCard:hover {
@@ -471,29 +448,37 @@
471448
width: 2.5rem;
472449
height: 2.5rem;
473450
display: block;
451+
filter: brightness(0) invert(1); /* Make icons white */
474452
}
475453

476454
.featureCardContent {
477455
text-align: center;
478456
margin-bottom: 1.2rem;
457+
flex: 1;
458+
display: flex;
459+
flex-direction: column;
460+
justify-content: flex-start;
461+
min-height: 0;
479462
}
480463

481464
.featureCardTitle {
482465
font-size: 1.15rem;
483466
font-weight: 600;
484467
margin-bottom: 0.4rem;
468+
color: #fff !important;
485469
}
486470

487471
.featureCardDescription {
488472
font-size: 1rem;
489-
color: var(--color-text-muted);
473+
color: #fff !important;
474+
line-height: 1.4;
475+
flex: 1;
490476
}
491477

492478
.featureCardButton {
493479
margin-top: auto;
494-
background: hsl(230, 81%, 92%);
495-
/* light blue */
496-
color: #222;
480+
background: #4F6AF6;
481+
color: #fff !important;
497482
font-weight: 600;
498483
padding: 0.7rem 1.5rem;
499484
border-radius: 6px;
@@ -503,16 +488,16 @@
503488
box-shadow: 0 1px 4px rgba(102, 126, 234, 0.08);
504489
transition: box-shadow 0.2s, transform 0.2s;
505490
display: inline-block;
491+
align-self: center;
506492
}
507493

508494
.featureCardButton:hover {
509-
background: hsl(230, 81%, 86%);
510-
box-shadow: 0 2px 8px rgba(102, 126, 234, 0.16);
495+
background: #a259ff;
496+
box-shadow: 0 2px 8px rgba(162, 89, 255, 0.16);
511497
transform: translateY(-2px) scale(1.04);
512498
}
513499

514500
.statisticsSection {
515-
background: var(--color-background-light);
516501
padding: 2.5rem 0 2rem 0;
517502
}
518503

@@ -522,7 +507,7 @@
522507
gap: 2rem;
523508
max-width: 1100px;
524509
margin: 0 auto;
525-
align-items: stretch;
510+
align-items: stretch; /* Make all items in a row the same height */
526511
}
527512

528513
@media (min-width: 900px) {

frontend/src/assets/styles/position.module.css

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -281,12 +281,18 @@
281281

282282
.noResultsMessage {
283283
text-align: center;
284-
padding: 3rem;
285-
color: #6b7280;
286-
font-style: italic;
287-
background: #f9fafb;
288-
border-radius: 0.75rem;
289-
border: 1px dashed #d1d5db;
284+
margin-top: var(--spacing-xl);
285+
padding: var(--spacing-lg);
286+
background-color: var(--color-background-light);
287+
border: 1px dotted var(--color-border);
288+
border-radius: var(--border-radius-md);
289+
color: var(--color-text-secondary);
290+
}
291+
292+
.noResultsMessage p:first-child {
293+
font-weight: bold;
294+
font-size: var(--font-size-lg);
295+
color: var(--color-text-light);
290296
}
291297

292298
.customTooltip {
@@ -431,9 +437,13 @@
431437
}
432438

433439
:global(.dark) .noResultsMessage {
434-
background: #2a2a2a;
435-
border: 1px dashed #404040;
436-
color: #ccc;
440+
background-color: var(--color-card-background) !important;
441+
border: 1px dashed var(--color-border);
442+
color: var(--color-text-secondary) !important;
443+
}
444+
445+
:global(.dark) .noResultsMessage p:first-child {
446+
color: #fff !important;
437447
}
438448

439449
:global(.dark) .customTooltip {

0 commit comments

Comments
 (0)