@prosophia/lab-classic 0.0.3 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,240 @@
1
+ /* Footer.module.css - Verdant Edition */
2
+
3
+ .footerWrapper {
4
+ padding: var(--space-3xl, 6rem) var(--space-xl, 3rem) var(--space-xl, 3rem);
5
+ margin-top: var(--space-3xl, 6rem);
6
+ border-top: 1px solid;
7
+ }
8
+
9
+ /* Light mode footer */
10
+ :global(body:not(.dark-mode)) .footerWrapper,
11
+ :global(.light-mode) .footerWrapper {
12
+ background: var(--light-bg-secondary, #F2F4F5);
13
+ border-top-color: rgba(21, 48, 33, 0.1);
14
+ }
15
+
16
+ /* Dark mode footer */
17
+ :global(.dark-mode) .footerWrapper,
18
+ :global(.dark) .footerWrapper {
19
+ background: var(--dark-bg-secondary, #0F2419);
20
+ border-top-color: rgba(139, 218, 163, 0.1);
21
+ }
22
+
23
+ .footerContainer {
24
+ max-width: 1400px;
25
+ margin: 0 auto;
26
+ position: relative;
27
+ z-index: 1;
28
+ }
29
+
30
+ /* Verdant 4-column grid */
31
+ .mainFooter {
32
+ display: grid;
33
+ grid-template-columns: 1fr;
34
+ gap: var(--space-3xl, 6rem);
35
+ margin-bottom: var(--space-3xl, 6rem);
36
+ }
37
+
38
+ @media (min-width: 768px) {
39
+ .mainFooter {
40
+ grid-template-columns: 1fr 1fr;
41
+ }
42
+ }
43
+
44
+ @media (min-width: 1024px) {
45
+ .mainFooter {
46
+ grid-template-columns: 2fr 1fr 1fr 1fr;
47
+ }
48
+ }
49
+
50
+ .footerAbout {
51
+ max-width: 400px;
52
+ }
53
+
54
+ /* Verdant Logo Style */
55
+ .footerLogo {
56
+ font-size: 1.5rem;
57
+ font-weight: 600;
58
+ color: var(--accent-tertiary, #5CB87A);
59
+ text-decoration: none;
60
+ display: inline-block;
61
+ margin-bottom: var(--space-md, 1.5rem);
62
+ transition: opacity var(--transition-base);
63
+ }
64
+
65
+ .footerLogo:hover {
66
+ opacity: 0.9;
67
+ }
68
+
69
+ .logoAccent {
70
+ color: var(--accent-tertiary, #5CB87A);
71
+ }
72
+
73
+ .footerDescription {
74
+ font-size: 0.9375rem;
75
+ line-height: 1.7;
76
+ max-width: 400px;
77
+ }
78
+
79
+ :global(body:not(.dark-mode)) .footerDescription,
80
+ :global(.light-mode) .footerDescription {
81
+ color: var(--light-text-muted, #7F878B);
82
+ }
83
+
84
+ :global(.dark-mode) .footerDescription,
85
+ :global(.dark) .footerDescription {
86
+ color: var(--dark-text-muted, #5C6366);
87
+ }
88
+
89
+ /* Social Icons */
90
+ .socials {
91
+ display: flex;
92
+ gap: var(--space-md, 1.5rem);
93
+ margin-top: var(--space-lg, 2rem);
94
+ }
95
+
96
+ .socialIcon {
97
+ width: 36px;
98
+ height: 36px;
99
+ border-radius: 50%;
100
+ display: flex;
101
+ align-items: center;
102
+ justify-content: center;
103
+ transition: all var(--transition-base);
104
+ }
105
+
106
+ :global(body:not(.dark-mode)) .socialIcon,
107
+ :global(.light-mode) .socialIcon {
108
+ background: rgba(42, 104, 71, 0.1);
109
+ color: var(--accent-primary, #2A6847);
110
+ }
111
+
112
+ :global(.dark-mode) .socialIcon,
113
+ :global(.dark) .socialIcon {
114
+ background: rgba(92, 184, 122, 0.1);
115
+ color: var(--accent-tertiary, #5CB87A);
116
+ }
117
+
118
+ .socialIcon:hover {
119
+ transform: translateY(-3px);
120
+ background: var(--accent-tertiary, #5CB87A);
121
+ color: white;
122
+ }
123
+
124
+ /* Footer Links Grid */
125
+ .footerLinksGrid {
126
+ display: contents;
127
+ }
128
+
129
+ .footerColumn h4 {
130
+ font-size: 0.875rem;
131
+ font-weight: 600;
132
+ letter-spacing: 0.05em;
133
+ text-transform: uppercase;
134
+ margin-bottom: var(--space-md, 1.5rem);
135
+ }
136
+
137
+ :global(body:not(.dark-mode)) .footerColumn h4,
138
+ :global(.light-mode) .footerColumn h4 {
139
+ color: var(--light-text-primary, #0A1810);
140
+ }
141
+
142
+ :global(.dark-mode) .footerColumn h4,
143
+ :global(.dark) .footerColumn h4 {
144
+ color: var(--dark-text-primary, #E8F9ED);
145
+ }
146
+
147
+ .footerColumn a {
148
+ display: block;
149
+ text-decoration: none;
150
+ font-size: 0.9375rem;
151
+ margin-bottom: var(--space-sm, 1rem);
152
+ transition: color var(--transition-base);
153
+ }
154
+
155
+ :global(body:not(.dark-mode)) .footerColumn a,
156
+ :global(.light-mode) .footerColumn a {
157
+ color: var(--light-text-muted, #7F878B);
158
+ }
159
+
160
+ :global(.dark-mode) .footerColumn a,
161
+ :global(.dark) .footerColumn a {
162
+ color: var(--dark-text-muted, #5C6366);
163
+ }
164
+
165
+ .footerColumn a::before {
166
+ display: none;
167
+ }
168
+
169
+ .footerColumn a:hover {
170
+ color: var(--accent-tertiary, #5CB87A);
171
+ padding-left: 0;
172
+ }
173
+
174
+ /* Footer Bottom Bar */
175
+ .footerBottomBar {
176
+ padding-top: var(--space-lg, 2rem);
177
+ border-top: 1px solid;
178
+ display: flex;
179
+ justify-content: space-between;
180
+ align-items: center;
181
+ flex-wrap: wrap;
182
+ gap: var(--space-md, 1.5rem);
183
+ }
184
+
185
+ :global(body:not(.dark-mode)) .footerBottomBar,
186
+ :global(.light-mode) .footerBottomBar {
187
+ border-top-color: rgba(21, 48, 33, 0.08);
188
+ }
189
+
190
+ :global(.dark-mode) .footerBottomBar,
191
+ :global(.dark) .footerBottomBar {
192
+ border-top-color: rgba(139, 218, 163, 0.08);
193
+ }
194
+
195
+ .footerBottomBar p {
196
+ font-size: 0.875rem;
197
+ }
198
+
199
+ :global(body:not(.dark-mode)) .footerBottomBar p,
200
+ :global(.light-mode) .footerBottomBar p {
201
+ color: var(--light-text-muted, #7F878B);
202
+ }
203
+
204
+ :global(.dark-mode) .footerBottomBar p,
205
+ :global(.dark) .footerBottomBar p {
206
+ color: var(--dark-text-muted, #5C6366);
207
+ }
208
+
209
+ .legalLinks {
210
+ display: flex;
211
+ gap: var(--space-lg, 2rem);
212
+ }
213
+
214
+ .legalLinks a {
215
+ font-size: 0.875rem;
216
+ text-decoration: none;
217
+ transition: color var(--transition-base);
218
+ }
219
+
220
+ :global(body:not(.dark-mode)) .legalLinks a,
221
+ :global(.light-mode) .legalLinks a {
222
+ color: var(--light-text-muted, #7F878B);
223
+ }
224
+
225
+ :global(.dark-mode) .legalLinks a,
226
+ :global(.dark) .legalLinks a {
227
+ color: var(--dark-text-muted, #5C6366);
228
+ }
229
+
230
+ .legalLinks a:hover {
231
+ color: var(--accent-tertiary, #5CB87A);
232
+ }
233
+
234
+ /* Mobile adjustments */
235
+ @media (max-width: 767px) {
236
+ .footerBottomBar {
237
+ flex-direction: column;
238
+ text-align: center;
239
+ }
240
+ }