Multimedix commited on
Commit
c7f1e06
·
verified ·
1 Parent(s): fced975

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. index.html +1324 -19
index.html CHANGED
@@ -1,19 +1,1324 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="de">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>VIBE CODING TUTORIAL — Auf Deutsch</title>
7
+ <link rel="preconnect" href="https://fonts.googleapis.com">
8
+ <link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&family=Space+Grotesk:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
9
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css">
10
+ <style>
11
+ *, *::before, *::after {
12
+ margin: 0;
13
+ padding: 0;
14
+ box-sizing: border-box;
15
+ }
16
+
17
+ :root {
18
+ --bg-deep: #0a0a0f;
19
+ --bg-surface: #12121a;
20
+ --bg-card: #1a1a28;
21
+ --bg-card-hover: #222236;
22
+ --fg: #e8e6f0;
23
+ --fg-muted: #8886a0;
24
+ --fg-dim: #5a5878;
25
+ --accent: #00ffa3;
26
+ --accent-alt: #ff6b9d;
27
+ --accent-warm: #ffb347;
28
+ --accent-cool: #47b3ff;
29
+ --border: rgba(255, 255, 255, 0.06);
30
+ --glow-accent: rgba(0, 255, 163, 0.15);
31
+ --glow-alt: rgba(255, 107, 157, 0.15);
32
+ --radius: 16px;
33
+ --radius-sm: 10px;
34
+ --radius-xs: 6px;
35
+ --font-display: 'Space Grotesk', sans-serif;
36
+ --font-mono: 'JetBrains Mono', monospace;
37
+ }
38
+
39
+ html {
40
+ scroll-behavior: smooth;
41
+ scrollbar-width: thin;
42
+ scrollbar-color: var(--accent) var(--bg-deep);
43
+ }
44
+
45
+ body {
46
+ font-family: var(--font-display);
47
+ background: var(--bg-deep);
48
+ color: var(--fg);
49
+ line-height: 1.7;
50
+ overflow-x: hidden;
51
+ }
52
+
53
+ /* ===== Scrollbar ===== */
54
+ ::-webkit-scrollbar { width: 6px; }
55
+ ::-webkit-scrollbar-track { background: var(--bg-deep); }
56
+ ::-webkit-scrollbar-thumb { background: var(--accent); border-radius: 3px; }
57
+
58
+ /* ===== Background Atmosphere ===== */
59
+ .bg-atmosphere {
60
+ position: fixed;
61
+ inset: 0;
62
+ z-index: 0;
63
+ pointer-events: none;
64
+ overflow: hidden;
65
+ }
66
+
67
+ .bg-blob {
68
+ position: absolute;
69
+ border-radius: 50%;
70
+ filter: blur(120px);
71
+ opacity: 0.4;
72
+ animation: blobFloat 20s ease-in-out infinite;
73
+ }
74
+
75
+ .bg-blob--1 {
76
+ width: 600px; height: 600px;
77
+ background: radial-gradient(circle, var(--accent), transparent 70%);
78
+ top: -200px; left: -100px;
79
+ animation-delay: 0s;
80
+ }
81
+
82
+ .bg-blob--2 {
83
+ width: 500px; height: 500px;
84
+ background: radial-gradient(circle, var(--accent-alt), transparent 70%);
85
+ bottom: -150px; right: -100px;
86
+ animation-delay: -7s;
87
+ }
88
+
89
+ .bg-blob--3 {
90
+ width: 400px; height: 400px;
91
+ background: radial-gradient(circle, var(--accent-cool), transparent 70%);
92
+ top: 50%; left: 50%;
93
+ transform: translate(-50%, -50%);
94
+ animation-delay: -14s;
95
+ opacity: 0.2;
96
+ }
97
+
98
+ @keyframes blobFloat {
99
+ 0%, 100% { transform: translate(0, 0) scale(1); }
100
+ 25% { transform: translate(60px, -40px) scale(1.1); }
101
+ 50% { transform: translate(-30px, 60px) scale(0.95); }
102
+ 75% { transform: translate(40px, 30px) scale(1.05); }
103
+ }
104
+
105
+ .bg-grid {
106
+ position: absolute;
107
+ inset: 0;
108
+ background-image:
109
+ linear-gradient(rgba(255,255,255,0.015) 1px, transparent 1px),
110
+ linear-gradient(90deg, rgba(255,255,255,0.015) 1px, transparent 1px);
111
+ background-size: 60px 60px;
112
+ }
113
+
114
+ /* ===== Noise Overlay ===== */
115
+ .noise-overlay {
116
+ position: fixed;
117
+ inset: 0;
118
+ z-index: 1;
119
+ pointer-events: none;
120
+ opacity: 0.03;
121
+ background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
122
+ background-repeat: repeat;
123
+ }
124
+
125
+ /* ===== Main Container ===== */
126
+ .main-container {
127
+ position: relative;
128
+ z-index: 2;
129
+ }
130
+
131
+ /* ===== Navigation ===== */
132
+ .nav {
133
+ position: fixed;
134
+ top: 0;
135
+ left: 0;
136
+ right: 0;
137
+ z-index: 100;
138
+ padding: 16px 32px;
139
+ display: flex;
140
+ align-items: center;
141
+ justify-content: space-between;
142
+ backdrop-filter: blur(20px) saturate(1.5);
143
+ -webkit-backdrop-filter: blur(20px) saturate(1.5);
144
+ background: rgba(10, 10, 15, 0.7);
145
+ border-bottom: 1px solid var(--border);
146
+ transition: all 0.4s ease;
147
+ }
148
+
149
+ .nav.scrolled {
150
+ padding: 10px 32px;
151
+ background: rgba(10, 10, 15, 0.9);
152
+ }
153
+
154
+ .nav-brand {
155
+ display: flex;
156
+ align-items: center;
157
+ gap: 12px;
158
+ text-decoration: none;
159
+ }
160
+
161
+ .nav-logo {
162
+ width: 36px; height: 36px;
163
+ background: linear-gradient(135deg, var(--accent), var(--accent-alt));
164
+ border-radius: var(--radius-xs);
165
+ display: flex;
166
+ align-items: center;
167
+ justify-content: center;
168
+ font-weight: 800;
169
+ font-size: 18px;
170
+ color: var(--bg-deep);
171
+ flex-shrink: 0;
172
+ }
173
+
174
+ .nav-title {
175
+ font-weight: 700;
176
+ font-size: 18px;
177
+ color: var(--fg);
178
+ letter-spacing: -0.5px;
179
+ }
180
+
181
+ .nav-title span {
182
+ color: var(--accent);
183
+ }
184
+
185
+ .nav-built {
186
+ font-size: 12px;
187
+ color: var(--fg-muted);
188
+ text-decoration: none;
189
+ opacity: 0.7;
190
+ transition: opacity 0.3s;
191
+ display: flex;
192
+ align-items: center;
193
+ gap: 6px;
194
+ }
195
+
196
+ .nav-built:hover {
197
+ opacity: 1;
198
+ color: var(--accent);
199
+ }
200
+
201
+ .nav-links {
202
+ display: flex;
203
+ gap: 8px;
204
+ list-style: none;
205
+ }
206
+
207
+ .nav-links a {
208
+ color: var(--fg-muted);
209
+ text-decoration: none;
210
+ font-size: 14px;
211
+ font-weight: 500;
212
+ padding: 6px 14px;
213
+ border-radius: var(--radius-xs);
214
+ transition: all 0.3s;
215
+ }
216
+
217
+ .nav-links a:hover {
218
+ color: var(--accent);
219
+ background: var(--glow-accent);
220
+ }
221
+
222
+ .nav-hamburger {
223
+ display: none;
224
+ background: none;
225
+ border: none;
226
+ color: var(--fg);
227
+ font-size: 22px;
228
+ cursor: pointer;
229
+ padding: 6px;
230
+ }
231
+
232
+ /* ===== Hero Section ===== */
233
+ .hero {
234
+ min-height: 100vh;
235
+ display: flex;
236
+ flex-direction: column;
237
+ align-items: center;
238
+ justify-content: center;
239
+ text-align: center;
240
+ padding: 120px 24px 80px;
241
+ position: relative;
242
+ }
243
+
244
+ .hero-badge {
245
+ display: inline-flex;
246
+ align-items: center;
247
+ gap: 8px;
248
+ padding: 8px 20px;
249
+ border-radius: 100px;
250
+ background: rgba(0, 255, 163, 0.08);
251
+ border: 1px solid rgba(0, 255, 163, 0.2);
252
+ color: var(--accent);
253
+ font-size: 13px;
254
+ font-weight: 600;
255
+ margin-bottom: 32px;
256
+ animation: fadeInUp 0.8s ease both;
257
+ }
258
+
259
+ .hero-badge i {
260
+ font-size: 10px;
261
+ animation: pulse 2s ease-in-out infinite;
262
+ }
263
+
264
+ @keyframes pulse {
265
+ 0%, 100% { opacity: 1; }
266
+ 50% { opacity: 0.3; }
267
+ }
268
+
269
+ .hero-heading {
270
+ font-size: clamp(42px, 8vw, 96px);
271
+ font-weight: 800;
272
+ line-height: 1.05;
273
+ letter-spacing: -3px;
274
+ margin-bottom: 24px;
275
+ animation: fadeInUp 0.8s ease 0.15s both;
276
+ }
277
+
278
+ .hero-heading .line1 {
279
+ display: block;
280
+ background: linear-gradient(135deg, var(--fg) 0%, var(--fg-muted) 100%);
281
+ -webkit-background-clip: text;
282
+ -webkit-text-fill-color: transparent;
283
+ background-clip: text;
284
+ }
285
+
286
+ .hero-heading .line2 {
287
+ display: block;
288
+ background: linear-gradient(135deg, var(--accent) 0%, var(--accent-cool) 50%, var(--accent-alt) 100%);
289
+ -webkit-background-clip: text;
290
+ -webkit-text-fill-color: transparent;
291
+ background-clip: text;
292
+ }
293
+
294
+ .hero-sub {
295
+ font-size: clamp(16px, 2.2vw, 22px);
296
+ color: var(--fg-muted);
297
+ max-width: 640px;
298
+ font-weight: 300;
299
+ line-height: 1.7;
300
+ margin-bottom: 48px;
301
+ animation: fadeInUp 0.8s ease 0.3s both;
302
+ }
303
+
304
+ .hero-actions {
305
+ display: flex;
306
+ gap: 16px;
307
+ flex-wrap: wrap;
308
+ justify-content: center;
309
+ animation: fadeInUp 0.8s ease 0.45s both;
310
+ }
311
+
312
+ .btn {
313
+ display: inline-flex;
314
+ align-items: center;
315
+ gap: 10px;
316
+ padding: 14px 32px;
317
+ border-radius: var(--radius-sm);
318
+ font-family: var(--font-display);
319
+ font-size: 15px;
320
+ font-weight: 600;
321
+ text-decoration: none;
322
+ cursor: pointer;
323
+ border: none;
324
+ transition: all 0.3s ease;
325
+ position: relative;
326
+ overflow: hidden;
327
+ }
328
+
329
+ .btn::before {
330
+ content: '';
331
+ position: absolute;
332
+ inset: 0;
333
+ background: linear-gradient(135deg, rgba(255,255,255,0.15), transparent);
334
+ opacity: 0;
335
+ transition: opacity 0.3s;
336
+ }
337
+
338
+ .btn:hover::before { opacity: 1; }
339
+
340
+ .btn-primary {
341
+ background: linear-gradient(135deg, var(--accent), #00cc82);
342
+ color: var(--bg-deep);
343
+ box-shadow: 0 4px 24px var(--glow-accent), 0 0 0 1px rgba(0,255,163,0.2);
344
+ }
345
+
346
+ .btn-primary:hover {
347
+ transform: translateY(-2px);
348
+ box-shadow: 0 8px 40px var(--glow-accent), 0 0 0 1px rgba(0,255,163,0.4);
349
+ }
350
+
351
+ .btn-secondary {
352
+ background: var(--bg-card);
353
+ color: var(--fg);
354
+ border: 1px solid var(--border);
355
+ }
356
+
357
+ .btn-secondary:hover {
358
+ background: var(--bg-card-hover);
359
+ border-color: rgba(255,255,255,0.12);
360
+ transform: translateY(-2px);
361
+ }
362
+
363
+ .hero-scroll-indicator {
364
+ position: absolute;
365
+ bottom: 32px;
366
+ left: 50%;
367
+ transform: translateX(-50%);
368
+ display: flex;
369
+ flex-direction: column;
370
+ align-items: center;
371
+ gap: 8px;
372
+ color: var(--fg-dim);
373
+ font-size: 12px;
374
+ animation: fadeInUp 0.8s ease 0.6s both;
375
+ }
376
+
377
+ .scroll-line {
378
+ width: 1px;
379
+ height: 40px;
380
+ background: linear-gradient(to bottom, var(--accent), transparent);
381
+ animation: scrollPulse 2s ease-in-out infinite;
382
+ }
383
+
384
+ @keyframes scrollPulse {
385
+ 0%, 100% { opacity: 1; transform: scaleY(1); }
386
+ 50% { opacity: 0.3; transform: scaleY(0.5); }
387
+ }
388
+
389
+ @keyframes fadeInUp {
390
+ from { opacity: 0; transform: translateY(30px); }
391
+ to { opacity: 1; transform: translateY(0); }
392
+ }
393
+
394
+ /* ===== Section Base ===== */
395
+ .section {
396
+ padding: 100px 24px;
397
+ max-width: 1200px;
398
+ margin: 0 auto;
399
+ }
400
+
401
+ .section-label {
402
+ display: inline-flex;
403
+ align-items: center;
404
+ gap: 8px;
405
+ font-size: 13px;
406
+ font-weight: 600;
407
+ color: var(--accent);
408
+ text-transform: uppercase;
409
+ letter-spacing: 2px;
410
+ margin-bottom: 16px;
411
+ }
412
+
413
+ .section-label i {
414
+ font-size: 14px;
415
+ }
416
+
417
+ .section-title {
418
+ font-size: clamp(28px, 4vw, 48px);
419
+ font-weight: 800;
420
+ letter-spacing: -1.5px;
421
+ line-height: 1.15;
422
+ margin-bottom: 16px;
423
+ }
424
+
425
+ .section-desc {
426
+ font-size: 17px;
427
+ color: var(--fg-muted);
428
+ max-width: 600px;
429
+ line-height: 1.7;
430
+ font-weight: 300;
431
+ }
432
+
433
+ /* ===== Was ist Vibe Coding ===== */
434
+ .intro-grid {
435
+ display: grid;
436
+ grid-template-columns: 1fr 1fr;
437
+ gap: 48px;
438
+ margin-top: 56px;
439
+ align-items: center;
440
+ }
441
+
442
+ .intro-text h3 {
443
+ font-size: 22px;
444
+ font-weight: 700;
445
+ margin-bottom: 16px;
446
+ color: var(--fg);
447
+ }
448
+
449
+ .intro-text p {
450
+ color: var(--fg-muted);
451
+ font-size: 16px;
452
+ line-height: 1.8;
453
+ margin-bottom: 20px;
454
+ }
455
+
456
+ .intro-highlight {
457
+ display: flex;
458
+ align-items: flex-start;
459
+ gap: 14px;
460
+ padding: 20px;
461
+ background: var(--bg-card);
462
+ border-radius: var(--radius-sm);
463
+ border: 1px solid var(--border);
464
+ margin-bottom: 16px;
465
+ transition: all 0.3s;
466
+ }
467
+
468
+ .intro-highlight:hover {
469
+ border-color: rgba(0,255,163,0.2);
470
+ background: var(--bg-card-hover);
471
+ }
472
+
473
+ .intro-highlight .icon-box {
474
+ width: 42px; height: 42px;
475
+ border-radius: var(--radius-xs);
476
+ display: flex;
477
+ align-items: center;
478
+ justify-content: center;
479
+ font-size: 18px;
480
+ flex-shrink: 0;
481
+ }
482
+
483
+ .icon-box--green { background: rgba(0,255,163,0.1); color: var(--accent); }
484
+ .icon-box--pink { background: var(--glow-alt); color: var(--accent-alt); }
485
+ .icon-box--blue { background: rgba(71,179,255,0.1); color: var(--accent-cool); }
486
+ .icon-box--warm { background: rgba(255,179,71,0.1); color: var(--accent-warm); }
487
+
488
+ .intro-highlight h4 {
489
+ font-size: 15px;
490
+ font-weight: 600;
491
+ margin-bottom: 4px;
492
+ }
493
+
494
+ .intro-highlight p {
495
+ font-size: 13px;
496
+ color: var(--fg-muted);
497
+ margin: 0;
498
+ line-height: 1.6;
499
+ }
500
+
501
+ /* ===== Vibe Visual ===== */
502
+ .vibe-visual {
503
+ position: relative;
504
+ background: var(--bg-card);
505
+ border-radius: var(--radius);
506
+ border: 1px solid var(--border);
507
+ overflow: hidden;
508
+ padding: 32px;
509
+ min-height: 420px;
510
+ }
511
+
512
+ .vibe-visual::before {
513
+ content: '';
514
+ position: absolute;
515
+ top: -50%;
516
+ left: -50%;
517
+ width: 200%;
518
+ height: 200%;
519
+ background: conic-gradient(from 0deg, transparent, var(--accent), transparent, var(--accent-alt), transparent);
520
+ animation: rotateBg 10s linear infinite;
521
+ opacity: 0.05;
522
+ }
523
+
524
+ @keyframes rotateBg {
525
+ to { transform: rotate(360deg); }
526
+ }
527
+
528
+ .vibe-terminal {
529
+ background: rgba(0,0,0,0.5);
530
+ border-radius: var(--radius-sm);
531
+ border: 1px solid var(--border);
532
+ overflow: hidden;
533
+ position: relative;
534
+ z-index: 1;
535
+ }
536
+
537
+ .terminal-bar {
538
+ display: flex;
539
+ align-items: center;
540
+ gap: 8px;
541
+ padding: 12px 16px;
542
+ background: rgba(0,0,0,0.4);
543
+ border-bottom: 1px solid var(--border);
544
+ }
545
+
546
+ .terminal-dot {
547
+ width: 10px; height: 10px;
548
+ border-radius: 50%;
549
+ }
550
+
551
+ .terminal-dot--red { background: #ff5f57; }
552
+ .terminal-dot--yellow { background: #ffbd2e; }
553
+ .terminal-dot--green { background: #28ca41; }
554
+
555
+ .terminal-title {
556
+ font-size: 12px;
557
+ color: var(--fg-dim);
558
+ margin-left: 8px;
559
+ font-family: var(--font-mono);
560
+ }
561
+
562
+ .terminal-body {
563
+ padding: 20px;
564
+ font-family: var(--font-mono);
565
+ font-size: 13px;
566
+ line-height: 1.9;
567
+ min-height: 260px;
568
+ }
569
+
570
+ .terminal-line {
571
+ opacity: 0;
572
+ animation: typeLine 0.5s ease forwards;
573
+ }
574
+
575
+ .terminal-prompt {
576
+ color: var(--accent);
577
+ }
578
+
579
+ .terminal-cmd {
580
+ color: var(--fg);
581
+ }
582
+
583
+ .terminal-comment {
584
+ color: var(--fg-dim);
585
+ }
586
+
587
+ .terminal-output {
588
+ color: var(--accent-cool);
589
+ }
590
+
591
+ .terminal-cursor {
592
+ display: inline-block;
593
+ width: 8px;
594
+ height: 16px;
595
+ background: var(--accent);
596
+ vertical-align: text-bottom;
597
+ animation: blink 1s step-end infinite;
598
+ }
599
+
600
+ @keyframes blink {
601
+ 50% { opacity: 0; }
602
+ }
603
+
604
+ /* ===== Schritte / Timeline ===== */
605
+ .steps-list {
606
+ margin-top: 56px;
607
+ display: flex;
608
+ flex-direction: column;
609
+ gap: 0;
610
+ position: relative;
611
+ }
612
+
613
+ .steps-list::before {
614
+ content: '';
615
+ position: absolute;
616
+ left: 28px;
617
+ top: 0;
618
+ bottom: 0;
619
+ width: 2px;
620
+ background: linear-gradient(to bottom, var(--accent), var(--accent-alt), var(--accent-cool));
621
+ border-radius: 1px;
622
+ }
623
+
624
+ .step-item {
625
+ display: flex;
626
+ gap: 28px;
627
+ padding: 32px 0;
628
+ position: relative;
629
+ opacity: 0;
630
+ transform: translateX(-20px);
631
+ transition: all 0.6s ease;
632
+ }
633
+
634
+ .step-item.visible {
635
+ opacity: 1;
636
+ transform: translateX(0);
637
+ }
638
+
639
+ .step-number {
640
+ width: 58px; height: 58px;
641
+ border-radius: 50%;
642
+ display: flex;
643
+ align-items: center;
644
+ justify-content: center;
645
+ font-weight: 800;
646
+ font-size: 20px;
647
+ flex-shrink: 0;
648
+ position: relative;
649
+ z-index: 1;
650
+ transition: all 0.3s;
651
+ }
652
+
653
+ .step-item:nth-child(1) .step-number {
654
+ background: rgba(0,255,163,0.12);
655
+ color: var(--accent);
656
+ border: 2px solid rgba(0,255,163,0.3);
657
+ }
658
+
659
+ .step-item:nth-child(2) .step-number {
660
+ background: var(--glow-alt);
661
+ color: var(--accent-alt);
662
+ border: 2px solid rgba(255,107,157,0.3);
663
+ }
664
+
665
+ .step-item:nth-child(3) .step-number {
666
+ background: rgba(71,179,255,0.1);
667
+ color: var(--accent-cool);
668
+ border: 2px solid rgba(71,179,255,0.3);
669
+ }
670
+
671
+ .step-item:nth-child(4) .step-number {
672
+ background: rgba(255,179,71,0.1);
673
+ color: var(--accent-warm);
674
+ border: 2px solid rgba(255,179,71,0.3);
675
+ }
676
+
677
+ .step-item:nth-child(5) .step-number {
678
+ background: rgba(0,255,163,0.12);
679
+ color: var(--accent);
680
+ border: 2px solid rgba(0,255,163,0.3);
681
+ }
682
+
683
+ .step-content {
684
+ flex: 1;
685
+ }
686
+
687
+ .step-content h3 {
688
+ font-size: 22px;
689
+ font-weight: 700;
690
+ margin-bottom: 8px;
691
+ }
692
+
693
+ .step-content p {
694
+ color: var(--fg-muted);
695
+ font-size: 15px;
696
+ line-height: 1.7;
697
+ margin-bottom: 16px;
698
+ }
699
+
700
+ .step-code {
701
+ background: rgba(0,0,0,0.4);
702
+ border: 1px solid var(--border);
703
+ border-radius: var(--radius-sm);
704
+ padding: 20px;
705
+ font-family: var(--font-mono);
706
+ font-size: 13px;
707
+ line-height: 1.8;
708
+ overflow-x: auto;
709
+ position: relative;
710
+ }
711
+
712
+ .step-code .kw { color: var(--accent-alt); }
713
+ .step-code .fn { color: var(--accent-cool); }
714
+ .step-code .str { color: var(--accent); }
715
+ .step-code .cm { color: var(--fg-dim); }
716
+ .step-code .num { color: var(--accent-warm); }
717
+
718
+ .step-code .copy-btn {
719
+ position: absolute;
720
+ top: 12px;
721
+ right: 12px;
722
+ background: var(--bg-card);
723
+ border: 1px solid var(--border);
724
+ color: var(--fg-muted);
725
+ padding: 6px 12px;
726
+ border-radius: var(--radius-xs);
727
+ font-size: 12px;
728
+ cursor: pointer;
729
+ font-family: var(--font-display);
730
+ transition: all 0.3s;
731
+ }
732
+
733
+ .step-code .copy-btn:hover {
734
+ background: var(--bg-card-hover);
735
+ color: var(--accent);
736
+ border-color: rgba(0,255,163,0.2);
737
+ }
738
+
739
+ /* ===== Tools Grid ===== */
740
+ .tools-grid {
741
+ display: grid;
742
+ grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
743
+ gap: 20px;
744
+ margin-top: 48px;
745
+ }
746
+
747
+ .tool-card {
748
+ background: var(--bg-card);
749
+ border: 1px solid var(--border);
750
+ border-radius: var(--radius);
751
+ padding: 28px;
752
+ transition: all 0.4s ease;
753
+ position: relative;
754
+ overflow: hidden;
755
+ cursor: default;
756
+ }
757
+
758
+ .tool-card::before {
759
+ content: '';
760
+ position: absolute;
761
+ top: 0;
762
+ left: 0;
763
+ right: 0;
764
+ height: 3px;
765
+ background: linear-gradient(90deg, var(--accent), var(--accent-alt));
766
+ opacity: 0;
767
+ transition: opacity 0.3s;
768
+ }
769
+
770
+ .tool-card:hover {
771
+ border-color: rgba(255,255,255,0.1);
772
+ background: var(--bg-card-hover);
773
+ transform: translateY(-4px);
774
+ box-shadow: 0 12px 40px rgba(0,0,0,0.3);
775
+ }
776
+
777
+ .tool-card:hover::before { opacity: 1; }
778
+
779
+ .tool-icon {
780
+ width: 52px; height: 52px;
781
+ border-radius: var(--radius-sm);
782
+ display: flex;
783
+ align-items: center;
784
+ justify-content: center;
785
+ font-size: 24px;
786
+ margin-bottom: 20px;
787
+ }
788
+
789
+ .tool-card h3 {
790
+ font-size: 18px;
791
+ font-weight: 700;
792
+ margin-bottom: 8px;
793
+ }
794
+
795
+ .tool-card p {
796
+ font-size: 14px;
797
+ color: var(--fg-muted);
798
+ line-height: 1.7;
799
+ margin-bottom: 16px;
800
+ }
801
+
802
+ .tool-tag {
803
+ display: inline-block;
804
+ padding: 4px 12px;
805
+ border-radius: 100px;
806
+ font-size: 11px;
807
+ font-weight: 600;
808
+ margin-right: 6px;
809
+ margin-bottom: 6px;
810
+ }
811
+
812
+ .tag-green { background: rgba(0,255,163,0.08); color: var(--accent); }
813
+ .tag-pink { background: var(--glow-alt); color: var(--accent-alt); }
814
+ .tag-blue { background: rgba(71,179,255,0.08); color: var(--accent-cool); }
815
+ .tag-warm { background: rgba(255,179,71,0.08); color: var(--accent-warm); }
816
+
817
+ /* ===== Live Demo ===== */
818
+ .demo-container {
819
+ margin-top: 56px;
820
+ background: var(--bg-card);
821
+ border-radius: var(--radius);
822
+ border: 1px solid var(--border);
823
+ overflow: hidden;
824
+ }
825
+
826
+ .demo-header {
827
+ display: flex;
828
+ align-items: center;
829
+ justify-content: space-between;
830
+ padding: 16px 24px;
831
+ border-bottom: 1px solid var(--border);
832
+ flex-wrap: wrap;
833
+ gap: 12px;
834
+ }
835
+
836
+ .demo-tabs {
837
+ display: flex;
838
+ gap: 4px;
839
+ }
840
+
841
+ .demo-tab {
842
+ padding: 8px 18px;
843
+ border-radius: var(--radius-xs);
844
+ font-size: 13px;
845
+ font-weight: 600;
846
+ cursor: pointer;
847
+ background: transparent;
848
+ border: none;
849
+ color: var(--fg-muted);
850
+ font-family: var(--font-display);
851
+ transition: all 0.3s;
852
+ }
853
+
854
+ .demo-tab.active {
855
+ background: var(--accent);
856
+ color: var(--bg-deep);
857
+ }
858
+
859
+ .demo-tab:hover:not(.active) {
860
+ background: rgba(255,255,255,0.05);
861
+ color: var(--fg);
862
+ }
863
+
864
+ .demo-body {
865
+ display: grid;
866
+ grid-template-columns: 1fr 1fr;
867
+ min-height: 400px;
868
+ }
869
+
870
+ .demo-editor {
871
+ padding: 24px;
872
+ border-right: 1px solid var(--border);
873
+ font-family: var(--font-mono);
874
+ font-size: 13px;
875
+ line-height: 1.9;
876
+ position: relative;
877
+ }
878
+
879
+ .demo-editor textarea {
880
+ width: 100%;
881
+ height: 100%;
882
+ min-height: 350px;
883
+ background: transparent;
884
+ border: none;
885
+ color: var(--fg);
886
+ font-family: var(--font-mono);
887
+ font-size: 13px;
888
+ line-height: 1.9;
889
+ resize: none;
890
+ outline: none;
891
+ }
892
+
893
+ .demo-preview {
894
+ padding: 24px;
895
+ background: #fff;
896
+ color: #1a1a2e;
897
+ overflow: auto;
898
+ }
899
+
900
+ .demo-preview h1 { font-size: 24px; margin-bottom: 8px; }
901
+ .demo-preview p { font-size: 14px; line-height: 1.6; }
902
+
903
+ /* ===== Tipps Section ===== */
904
+ .tipps-grid {
905
+ display: grid;
906
+ grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
907
+ gap: 20px;
908
+ margin-top: 48px;
909
+ }
910
+
911
+ .tipp-card {
912
+ background: var(--bg-card);
913
+ border: 1px solid var(--border);
914
+ border-radius: var(--radius);
915
+ padding: 28px;
916
+ transition: all 0.3s;
917
+ }
918
+
919
+ .tipp-card:hover {
920
+ border-color: rgba(255,255,255,0.1);
921
+ transform: translateY(-2px);
922
+ }
923
+
924
+ .tipp-number {
925
+ font-size: 48px;
926
+ font-weight: 800;
927
+ background: linear-gradient(135deg, var(--accent), var(--accent-alt));
928
+ -webkit-background-clip: text;
929
+ -webkit-text-fill-color: transparent;
930
+ background-clip: text;
931
+ line-height: 1;
932
+ margin-bottom: 16px;
933
+ }
934
+
935
+ .tipp-card h3 {
936
+ font-size: 18px;
937
+ font-weight: 700;
938
+ margin-bottom: 10px;
939
+ }
940
+
941
+ .tipp-card p {
942
+ font-size: 14px;
943
+ color: var(--fg-muted);
944
+ line-height: 1.7;
945
+ }
946
+
947
+ /* ===== Vibe Meter ===== */
948
+ .vibe-meter-section {
949
+ margin-top: 56px;
950
+ background: var(--bg-card);
951
+ border-radius: var(--radius);
952
+ border: 1px solid var(--border);
953
+ padding: 40px;
954
+ text-align: center;
955
+ }
956
+
957
+ .vibe-meter-section h3 {
958
+ font-size: 24px;
959
+ font-weight: 700;
960
+ margin-bottom: 8px;
961
+ }
962
+
963
+ .vibe-meter-section p {
964
+ color: var(--fg-muted);
965
+ margin-bottom: 32px;
966
+ font-size: 15px;
967
+ }
968
+
969
+ .vibe-meter {
970
+ width: 100%;
971
+ max-width: 500px;
972
+ margin: 0 auto 24px;
973
+ }
974
+
975
+ .vibe-slider {
976
+ -webkit-appearance: none;
977
+ width: 100%;
978
+ height: 12px;
979
+ border-radius: 6px;
980
+ background: linear-gradient(90deg, var(--accent-alt), var(--accent-warm), var(--accent), var(--accent-cool));
981
+ outline: none;
982
+ cursor: pointer;
983
+ }
984
+
985
+ .vibe-slider::-webkit-slider-thumb {
986
+ -webkit-appearance: none;
987
+ width: 28px;
988
+ height: 28px;
989
+ border-radius: 50%;
990
+ background: var(--fg);
991
+ border: 3px solid var(--bg-deep);
992
+ box-shadow: 0 2px 12px rgba(0,0,0,0.4);
993
+ cursor: pointer;
994
+ }
995
+
996
+ .vibe-slider::-moz-range-thumb {
997
+ width: 28px;
998
+ height: 28px;
999
+ border-radius: 50%;
1000
+ background: var(--fg);
1001
+ border: 3px solid var(--bg-deep);
1002
+ box-shadow: 0 2px 12px rgba(0,0,0,0.4);
1003
+ cursor: pointer;
1004
+ }
1005
+
1006
+ .vibe-result {
1007
+ font-size: 28px;
1008
+ font-weight: 800;
1009
+ margin-top: 16px;
1010
+ transition: all 0.3s;
1011
+ }
1012
+
1013
+ .vibe-desc {
1014
+ font-size: 14px;
1015
+ color: var(--fg-muted);
1016
+ margin-top: 8px;
1017
+ }
1018
+
1019
+ /* ===== FAQ ===== */
1020
+ .faq-list {
1021
+ margin-top: 48px;
1022
+ display: flex;
1023
+ flex-direction: column;
1024
+ gap: 12px;
1025
+ }
1026
+
1027
+ .faq-item {
1028
+ background: var(--bg-card);
1029
+ border: 1px solid var(--border);
1030
+ border-radius: var(--radius-sm);
1031
+ overflow: hidden;
1032
+ transition: all 0.3s;
1033
+ }
1034
+
1035
+ .faq-item.open {
1036
+ border-color: rgba(0,255,163,0.15);
1037
+ }
1038
+
1039
+ .faq-question {
1040
+ display: flex;
1041
+ align-items: center;
1042
+ justify-content: space-between;
1043
+ padding: 20px 24px;
1044
+ cursor: pointer;
1045
+ font-weight: 600;
1046
+ font-size: 16px;
1047
+ background: none;
1048
+ border: none;
1049
+ color: var(--fg);
1050
+ width: 100%;
1051
+ text-align: left;
1052
+ font-family: var(--font-display);
1053
+ transition: all 0.3s;
1054
+ }
1055
+
1056
+ .faq-question:hover {
1057
+ color: var(--accent);
1058
+ }
1059
+
1060
+ .faq-question i {
1061
+ transition: transform 0.3s;
1062
+ font-size: 14px;
1063
+ color: var(--fg-dim);
1064
+ }
1065
+
1066
+ .faq-item.open .faq-question i {
1067
+ transform: rotate(180deg);
1068
+ color: var(--accent);
1069
+ }
1070
+
1071
+ .faq-answer {
1072
+ max-height: 0;
1073
+ overflow: hidden;
1074
+ transition: max-height 0.4s ease, padding 0.4s ease;
1075
+ }
1076
+
1077
+ .faq-item.open .faq-answer {
1078
+ max-height: 300px;
1079
+ }
1080
+
1081
+ .faq-answer-inner {
1082
+ padding: 0 24px 20px;
1083
+ color: var(--fg-muted);
1084
+ font-size: 15px;
1085
+ line-height: 1.7;
1086
+ }
1087
+
1088
+ /* ===== Footer ===== */
1089
+ .footer {
1090
+ padding: 60px 24px 32px;
1091
+ text-align: center;
1092
+ border-top: 1px solid var(--border);
1093
+ margin-top: 80px;
1094
+ }
1095
+
1096
+ .footer-brand {
1097
+ font-size: 20px;
1098
+ font-weight: 700;
1099
+ margin-bottom: 12px;
1100
+ }
1101
+
1102
+ .footer-brand span { color: var(--accent); }
1103
+
1104
+ .footer-text {
1105
+ color: var(--fg-dim);
1106
+ font-size: 14px;
1107
+ margin-bottom: 20px;
1108
+ }
1109
+
1110
+ .footer-links {
1111
+ display: flex;
1112
+ justify-content: center;
1113
+ gap: 24px;
1114
+ flex-wrap: wrap;
1115
+ }
1116
+
1117
+ .footer-links a {
1118
+ color: var(--fg-muted);
1119
+ text-decoration: none;
1120
+ font-size: 14px;
1121
+ transition: color 0.3s;
1122
+ }
1123
+
1124
+ .footer-links a:hover { color: var(--accent); }
1125
+
1126
+ /* ===== Toast ===== */
1127
+ .toast {
1128
+ position: fixed;
1129
+ bottom: 32px;
1130
+ right: 32px;
1131
+ background: var(--bg-card);
1132
+ border: 1px solid rgba(0,255,163,0.2);
1133
+ color: var(--accent);
1134
+ padding: 14px 24px;
1135
+ border-radius: var(--radius-sm);
1136
+ font-size: 14px;
1137
+ font-weight: 600;
1138
+ z-index: 200;
1139
+ display: flex;
1140
+ align-items: center;
1141
+ gap: 10px;
1142
+ transform: translateY(100px);
1143
+ opacity: 0;
1144
+ transition: all 0.4s ease;
1145
+ backdrop-filter: blur(12px);
1146
+ }
1147
+
1148
+ .toast.show {
1149
+ transform: translateY(0);
1150
+ opacity: 1;
1151
+ }
1152
+
1153
+ /* ===== Reveal Animation ===== */
1154
+ .reveal {
1155
+ opacity: 0;
1156
+ transform: translateY(40px);
1157
+ transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
1158
+ }
1159
+
1160
+ .reveal.visible {
1161
+ opacity: 1;
1162
+ transform: translateY(0);
1163
+ }
1164
+
1165
+ /* ===== Mobile Nav Overlay ===== */
1166
+ .mobile-nav {
1167
+ display: none;
1168
+ position: fixed;
1169
+ inset: 0;
1170
+ z-index: 99;
1171
+ background: rgba(10,10,15,0.95);
1172
+ backdrop-filter: blur(20px);
1173
+ flex-direction: column;
1174
+ align-items: center;
1175
+ justify-content: center;
1176
+ gap: 24px;
1177
+ }
1178
+
1179
+ .mobile-nav.open { display: flex; }
1180
+
1181
+ .mobile-nav a {
1182
+ color: var(--fg);
1183
+ text-decoration: none;
1184
+ font-size: 24px;
1185
+ font-weight: 600;
1186
+ transition: color 0.3s;
1187
+ }
1188
+
1189
+ .mobile-nav a:hover { color: var(--accent); }
1190
+
1191
+ .mobile-nav-close {
1192
+ position: absolute;
1193
+ top: 20px;
1194
+ right: 24px;
1195
+ background: none;
1196
+ border: none;
1197
+ color: var(--fg);
1198
+ font-size: 28px;
1199
+ cursor: pointer;
1200
+ }
1201
+
1202
+ /* ===== Responsive ===== */
1203
+ @media (max-width: 900px) {
1204
+ .intro-grid { grid-template-columns: 1fr; }
1205
+ .demo-body { grid-template-columns: 1fr; }
1206
+ .demo-editor { border-right: none; border-bottom: 1px solid var(--border); }
1207
+ .nav-links { display: none; }
1208
+ .nav-hamburger { display: block; }
1209
+ .tipps-grid { grid-template-columns: 1fr; }
1210
+ }
1211
+
1212
+ @media (max-width: 600px) {
1213
+ .hero-heading { letter-spacing: -1.5px; }
1214
+ .section { padding: 60px 16px; }
1215
+ .vibe-meter-section { padding: 24px; }
1216
+ .steps-list::before { left: 18px; }
1217
+ .step-number { width: 40px; height: 40px; font-size: 16px; }
1218
+ .step-item { gap: 16px; }
1219
+ }
1220
+
1221
+ /* ===== Particle Canvas ===== */
1222
+ #particle-canvas {
1223
+ position: fixed;
1224
+ inset: 0;
1225
+ z-index: 0;
1226
+ pointer-events: none;
1227
+ }
1228
+ </style>
1229
+ </head>
1230
+ <body>
1231
+
1232
+ <!-- Atmosphere -->
1233
+ <div class="bg-atmosphere">
1234
+ <div class="bg-blob bg-blob--1"></div>
1235
+ <div class="bg-blob bg-blob--2"></div>
1236
+ <div class="bg-blob bg-blob--3"></div>
1237
+ <div class="bg-grid"></div>
1238
+ </div>
1239
+ <canvas id="particle-canvas"></canvas>
1240
+ <div class="noise-overlay"></div>
1241
+
1242
+ <!-- Navigation -->
1243
+ <nav class="nav" id="navbar">
1244
+ <a href="#" class="nav-brand">
1245
+ <div class="nav-logo">V</div>
1246
+ <span class="nav-title">VIBE<span>CODE</span></span>
1247
+ </a>
1248
+ <ul class="nav-links">
1249
+ <li><a href="#intro">Was ist es?</a></li>
1250
+ <li><a href="#schritte">Schritte</a></li>
1251
+ <li><a href="#tools">Tools</a></li>
1252
+ <li><a href="#demo">Live Demo</a></li>
1253
+ <li><a href="#tipps">Tipps</a></li>
1254
+ <li><a href="#faq">FAQ</a></li>
1255
+ </ul>
1256
+ <a href="https://huggingface.co/spaces/akhaliq/anycoder" target="_blank" class="nav-built">
1257
+ <i class="fa-solid fa-cube"></i> Built with anycoder
1258
+ </a>
1259
+ <button class="nav-hamburger" id="hamburgerBtn" aria-label="Menu">
1260
+ <i class="fa-solid fa-bars"></i>
1261
+ </button>
1262
+ </nav>
1263
+
1264
+ <!-- Mobile Nav -->
1265
+ <div class="mobile-nav" id="mobileNav">
1266
+ <button class="mobile-nav-close" id="mobileNavClose" aria-label="Close"><i class="fa-solid fa-xmark"></i></button>
1267
+ <a href="#intro" onclick="closeMobileNav()">Was ist es?</a>
1268
+ <a href="#schritte" onclick="closeMobileNav()">Schritte</a>
1269
+ <a href="#tools" onclick="closeMobileNav()">Tools</a>
1270
+ <a href="#demo" onclick="closeMobileNav()">Live Demo</a>
1271
+ <a href="#tipps" onclick="closeMobileNav()">Tipps</a>
1272
+ <a href="#faq" onclick="closeMobileNav()">FAQ</a>
1273
+ </div>
1274
+
1275
+ <!-- Main Content -->
1276
+ <div class="main-container">
1277
+
1278
+ <!-- Hero -->
1279
+ <section class="hero" id="hero">
1280
+ <div class="hero-badge"><i class="fa-solid fa-circle"></i> Tutorial 2025 — Auf Deutsch</div>
1281
+ <h1 class="hero-heading">
1282
+ <span class="line1">VIBE</span>
1283
+ <span class="line2">CODING</span>
1284
+ </h1>
1285
+ <p class="hero-sub">Programmieren mit Intuition statt mit Anleitung. Lerne, wie du mit KI-Tools Software erstellst — ganz nach deinem Vibe.</p>
1286
+ <div class="hero-actions">
1287
+ <a href="#schritte" class="btn btn-primary"><i class="fa-solid fa-rocket"></i> Jetzt starten</a>
1288
+ <a href="#intro" class="btn btn-secondary"><i class="fa-solid fa-play"></i> Was ist Vibe Coding?</a>
1289
+ </div>
1290
+ <div class="hero-scroll-indicator">
1291
+ <div class="scroll-line"></div>
1292
+ <span>Scroll</span>
1293
+ </div>
1294
+ </section>
1295
+
1296
+ <!-- Intro Section -->
1297
+ <section class="section" id="intro">
1298
+ <div class="reveal">
1299
+ <span class="section-label"><i class="fa-solid fa-lightbulb"></i> Grundlagen</span>
1300
+ <h2 class="section-title">Was ist Vibe Coding?</h2>
1301
+ <p class="section-desc">Vibe Coding ist ein neuer Ansatz zur Softwareentwicklung, bei dem du natürliche Sprache, Intuition und KI verwendest, um Code zu erzeugen — statt alles manuell zu tippen.</p>
1302
+ </div>
1303
+
1304
+ <div class="intro-grid">
1305
+ <div class="intro-text reveal">
1306
+ <h3>Der Kerngedanke</h3>
1307
+ <p>Stell dir vor, du beschreibst einer KI, was du bauen möchtest — und sie generiert den Code dafür. Du steuerst mit deinem "Vibe", deiner Vision und Intuition, während die KI die Umsetzung übernimmt.</p>
1308
+ <p>Der Begriff wurde von Andrej Karpathy geprägt, der beschrieb, dass er Code mittlerweile "by vibe" schreibt — also durch Gefühl und natürliche Beschreibung statt durch präzise Syntax.</p>
1309
+
1310
+ <div class="intro-highlight">
1311
+ <div class="icon-box icon-box--green"><i class="fa-solid fa-language"></i></div>
1312
+ <div>
1313
+ <h4>Natürliche Sprache</h4>
1314
+ <p>Beschreibe, was du willst — auf Deutsch oder Englisch.</p>
1315
+ </div>
1316
+ </div>
1317
+ <div class="intro-highlight">
1318
+ <div class="icon-box icon-box--pink"><i class="fa-solid fa-wand-magic-sparkles"></i></div>
1319
+ <div>
1320
+ <h4>KI-generierter Code</h4>
1321
+ <p>Die KI übersetzt deine Beschreibung in funktionierenden Code.</p>
1322
+ </div>
1323
+ </div>
1324
+ <div class="intro-highlight">