|
1 | | -<main class="relative min-h-screen w-full flex items-center justify-center overflow-hidden transition-all duration-1000 bg-scene-gradient"> |
2 | | - |
| 1 | +<main |
| 2 | + class="relative min-h-screen w-full flex items-center justify-center overflow-hidden transition-all duration-1000 bg-scene-gradient" |
| 3 | +> |
3 | 4 | <!-- Animated Background Elements --> |
4 | 5 | <div class="absolute inset-0 pointer-events-none"> |
5 | | - |
6 | 6 | <!-- Sun --> |
7 | | - <div class="absolute top-20 left-20 w-32 h-32 rounded-full bg-yellow-400 shadow-[0_0_80px_rgba(250,204,21,0.6)] |
8 | | - transition-all duration-1000 ease-in-out" |
9 | | - [style.transform]="'var(--sun-transform)'" |
10 | | - [style.opacity]="'var(--sun-opacity)'"> |
11 | | - <div class="absolute inset-0 rounded-full animate-pulse bg-yellow-300 opacity-50 blur-xl"></div> |
| 7 | + <div |
| 8 | + class="absolute top-20 left-20 w-32 h-32 rounded-full bg-yellow-400 shadow-[0_0_80px_rgba(250,204,21,0.6)] transition-all duration-1000 ease-in-out" |
| 9 | + [style.transform]="'var(--sun-transform)'" |
| 10 | + [style.opacity]="'var(--sun-opacity)'" |
| 11 | + > |
| 12 | + <div |
| 13 | + class="absolute inset-0 rounded-full animate-pulse bg-yellow-300 opacity-50 blur-xl" |
| 14 | + ></div> |
12 | 15 | </div> |
13 | 16 |
|
14 | 17 | <!-- Moon --> |
15 | | - <div class="absolute top-20 right-20 w-28 h-28 rounded-full bg-slate-200 shadow-[0_0_50px_rgba(226,232,240,0.4)] |
16 | | - transition-all duration-1000 ease-in-out" |
17 | | - [style.transform]="'var(--moon-transform)'" |
18 | | - [style.opacity]="'var(--moon-opacity)'"> |
| 18 | + <div |
| 19 | + class="absolute top-20 right-20 w-28 h-28 rounded-full bg-slate-200 shadow-[0_0_50px_rgba(226,232,240,0.4)] transition-all duration-1000 ease-in-out" |
| 20 | + [style.transform]="'var(--moon-transform)'" |
| 21 | + [style.opacity]="'var(--moon-opacity)'" |
| 22 | + > |
19 | 23 | <div class="absolute top-4 left-6 w-8 h-8 rounded-full bg-slate-300 opacity-40"></div> |
20 | 24 | <div class="absolute top-12 left-12 w-6 h-6 rounded-full bg-slate-300 opacity-40"></div> |
21 | 25 | </div> |
22 | 26 |
|
23 | 27 | <!-- Deep Night Stars --> |
24 | | - <div class="absolute inset-0 transition-opacity duration-1000 ease-in pointer-events-none" |
25 | | - [style.opacity]="'var(--stars-opacity)'"> |
| 28 | + <div |
| 29 | + class="absolute inset-0 transition-opacity duration-1000 ease-in pointer-events-none" |
| 30 | + [style.opacity]="'var(--stars-opacity)'" |
| 31 | + > |
26 | 32 | @for (star of stars; track $index) { |
27 | 33 | <div |
28 | 34 | class="absolute bg-white rounded-full shadow-[0_0_8px_rgba(255,255,255,0.8)]" |
|
37 | 43 | </div> |
38 | 44 |
|
39 | 45 | <!-- Soft Morning Clouds --> |
40 | | - <div class="absolute inset-0 transition-opacity duration-500" |
41 | | - [style.opacity]="'var(--clouds-opacity)'"> |
| 46 | + <div |
| 47 | + class="absolute inset-0 transition-opacity duration-500" |
| 48 | + [style.opacity]="'var(--clouds-opacity)'" |
| 49 | + > |
42 | 50 | @for (cloud of clouds; track $index) { |
43 | 51 | <div |
44 | | - [class]="'absolute w-28 h-10 bg-white/70 rounded-full blur-xs shadow-sm ' + cloud.animation" |
| 52 | + [class]=" |
| 53 | + 'absolute w-28 h-10 bg-white/70 rounded-full blur-xs shadow-sm ' + cloud.animation |
| 54 | + " |
45 | 55 | [style.top]="cloud.top" |
46 | 56 | [style.left]="cloud.left" |
47 | 57 | [style.animation-delay]="cloud.delay" |
|
54 | 64 | </div> |
55 | 65 |
|
56 | 66 | <!-- Main Vertical Flow Container --> |
57 | | - <div class="relative z-50 min-h-screen flex flex-col items-center justify-between py-12 px-4 gap-12 overflow-x-hidden"> |
58 | | - |
59 | | - <!-- Top Header (Switcher) --> |
60 | | - <header class="w-full flex justify-center"> |
61 | | - <div class="scale-90 md:scale-100"> |
62 | | - <app-theme-switcher /> |
63 | | - </div> |
64 | | - </header> |
| 67 | + <div |
| 68 | + class="relative z-50 min-h-screen flex flex-col items-center justify-between py-12 px-4 gap-12 overflow-x-hidden" |
| 69 | + > |
| 70 | + @if (!isHome()) { |
| 71 | + <header class="w-full flex justify-center"> |
| 72 | + <div class="scale-90 md:scale-100"> |
| 73 | + <app-theme-switcher /> |
| 74 | + </div> |
| 75 | + </header> |
| 76 | + } |
65 | 77 |
|
66 | 78 | <!-- Center Content (Cards) --> |
67 | 79 | <section class="flex-1 w-full flex items-center justify-center"> |
68 | | - <router-outlet /> |
| 80 | + <router-outlet /> |
69 | 81 | </section> |
70 | 82 |
|
71 | 83 | <!-- Bottom Footer --> |
72 | | - <footer class="w-full py-4 text-center text-text-muted tracking-tight flex flex-col md:flex-row items-center justify-center gap-1 md:gap-4 text-[10px] md:text-xs"> |
| 84 | + <footer |
| 85 | + class="w-full py-4 text-center text-text-muted tracking-tight flex flex-col md:flex-row items-center justify-center gap-1 md:gap-4 text-[10px] md:text-xs" |
| 86 | + > |
73 | 87 | <span>Built by <strong class="font-bold">WanderleeDev</strong></span> |
74 | 88 | <div class="flex items-center gap-3"> |
75 | 89 | <a href="#" class="hover:text-text-main transition-colors underline underline-offset-4 decoration-dotted">Docs</a> |
76 | 90 | <span class="opacity-30 hidden md:inline">·</span> |
77 | | - <a href="#" class="hover:text-text-main transition-colors underline underline-offset-4 decoration-dotted">GitHub</a> |
| 91 | + <a href="https://github.com/WanderleeDev/ngx-theme-stack" |
| 92 | + target="_blank" |
| 93 | + class="hover:text-text-main transition-colors underline underline-offset-4 decoration-dotted">GitHub</a> |
78 | 94 | <span class="opacity-30 hidden md:inline">·</span> |
79 | | - <a href="#" class="hover:text-text-main transition-colors underline underline-offset-4 decoration-dotted">NPM</a> |
| 95 | + <a href="https://www.npmjs.com/package/ngx-theme-stack" |
| 96 | + target="_blank" |
| 97 | + class="hover:text-text-main transition-colors underline underline-offset-4 decoration-dotted">NPM</a> |
80 | 98 | </div> |
81 | 99 | </footer> |
82 | 100 | </div> |
|
0 commit comments