eny.space Landingpage
1@import "tailwindcss";
2@import "tw-animate-css";
3
4@custom-variant dark (&:is(.dark *));
5
6/* Variables */
7:root {
8 --body-color: #050505;
9 --body-text-color: #f5f5f5;
10 --checkout-color: #8f6ed5;
11 --elements-color: #7c7cff;
12 --h1-color: #f9fafb;
13 --h2-color: #e5e7eb;
14 --h3-color: #9ca3af;
15 --radius: 0.625rem;
16 --container-width-max: 1280px;
17 --page-width-max: 600px;
18 --transition-duration: 2s;
19 --background: oklch(1 0 0);
20 --foreground: oklch(0.141 0.005 285.823);
21 --card: oklch(1 0 0);
22 --card-foreground: oklch(0.141 0.005 285.823);
23 --popover: oklch(1 0 0);
24 --popover-foreground: oklch(0.141 0.005 285.823);
25 --primary: oklch(0.21 0.006 285.885);
26 --primary-foreground: oklch(0.985 0 0);
27 --secondary: oklch(0.967 0.001 286.375);
28 --secondary-foreground: oklch(0.21 0.006 285.885);
29 --muted: oklch(0.967 0.001 286.375);
30 --muted-foreground: oklch(0.552 0.016 285.938);
31 --accent: oklch(0.967 0.001 286.375);
32 --accent-foreground: oklch(0.21 0.006 285.885);
33 --destructive: oklch(0.577 0.245 27.325);
34 --border: oklch(0.92 0.004 286.32);
35 --input: oklch(0.92 0.004 286.32);
36 --ring: oklch(0.705 0.015 286.067);
37 --chart-1: oklch(0.646 0.222 41.116);
38 --chart-2: oklch(0.6 0.118 184.704);
39 --chart-3: oklch(0.398 0.07 227.392);
40 --chart-4: oklch(0.828 0.189 84.429);
41 --chart-5: oklch(0.769 0.188 70.08);
42 --sidebar: oklch(0.985 0 0);
43 --sidebar-foreground: oklch(0.141 0.005 285.823);
44 --sidebar-primary: oklch(0.21 0.006 285.885);
45 --sidebar-primary-foreground: oklch(0.985 0 0);
46 --sidebar-accent: oklch(0.967 0.001 286.375);
47 --sidebar-accent-foreground: oklch(0.21 0.006 285.885);
48 --sidebar-border: oklch(0.92 0.004 286.32);
49 --sidebar-ring: oklch(0.705 0.015 286.067);
50}
51
52body {
53 margin: 0;
54 padding: 0;
55 background: var(--body-color);
56 color: var(--body-text-color);
57 overflow-y: scroll;
58}
59
60* {
61 box-sizing: border-box;
62 -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
63}
64
65#__next {
66 display: flex;
67 justify-content: center;
68}
69
70.container {
71 max-width: var(--container-width-max);
72 padding: 45px 25px;
73 display: flex;
74 flex-direction: row;
75}
76
77.page-container {
78 padding-bottom: 60px;
79 max-width: var(--page-width-max);
80}
81
82h1 {
83 font-weight: 600;
84 color: var(--h1-color);
85 margin: 6px 0 12px;
86 font-size: 27px;
87 line-height: 32px;
88}
89
90h1 span.light {
91 color: var(--h3-color);
92}
93
94h2 {
95 color: var(--h2-color);
96 margin: 8px 0;
97}
98
99h3 {
100 font-size: 17px;
101 color: var(--h3-color);
102 margin: 8px 0;
103}
104
105a {
106 color: #ffffff;
107 text-decoration: none;
108}
109
110header {
111 position: relative;
112 flex: 0 0 250px;
113 padding-right: 48px;
114}
115
116.header-content {
117 position: sticky;
118 top: 45px;
119}
120
121.logo img {
122 height: 20px;
123 margin-bottom: 52px;
124}
125
126ul,
127li {
128 list-style: none;
129 padding: 0;
130 margin: 0;
131}
132
133.card-list {
134 display: flex;
135 flex-wrap: wrap;
136 align-content: flex-start;
137 padding-top: 64px;
138}
139
140.card {
141 display: block;
142 border-radius: 10px;
143 position: relative;
144 padding: 12px;
145 height: 320px;
146 flex: 0 0 33%;
147 min-width: 304px;
148 width: 33%;
149 margin: 0 20px 20px 0;
150 text-decoration: none;
151 box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6),
152 0 0 0 1px rgba(255, 255, 255, 0.08);
153 background: #0b0b0f;
154}
155.card h2 {
156 color: #fff;
157}
158.card h2.bottom {
159 position: absolute;
160 bottom: 10px;
161}
162
163.card img {
164 width: 80%;
165 position: absolute;
166 top: 50%;
167 left: 50%;
168 transform: translate(-50%, -50%);
169}
170
171.error-message {
172 color: #ef2961;
173}
174
175.FormRow,
176fieldset,
177input[type="number"],
178input[type="text"] {
179 border-radius: var(--radius);
180 padding: 5px 12px;
181 width: 100%;
182 background: #111827;
183 color: var(--body-text-color);
184 appearance: none;
185 font-size: 16px;
186 margin-top: 10px;
187}
188
189input[type="range"] {
190 margin: 5px 0;
191 width: 100%;
192}
193
194button {
195 border-radius: var(--radius);
196 color: white;
197 font-size: larger;
198 border: 0;
199 padding: 12px 16px;
200 margin-top: 10px;
201 font-weight: 600;
202 cursor: pointer;
203 transition: all 0.2s ease;
204 display: block;
205 width: 100%;
206}
207button:disabled {
208 opacity: 0.5;
209 cursor: not-allowed;
210}
211
212.elements-style {
213 color: var(--elements-color);
214 border: 1px solid var(--elements-color);
215}
216.elements-style-background {
217 background: var(--elements-color);
218 transition: box-shadow var(--transition-duration);
219}
220.card.elements-style-background:hover {
221 box-shadow: 20px 20px 60px #464e9c, -20px -20px 60px #8896ff;
222}
223.checkout-style {
224 color: var(--checkout-color);
225 border: 1px solid var(--checkout-color);
226}
227.checkout-style-background {
228 background: #000000;
229 color: #ffffff;
230 border: 1px solid #ffffff;
231 transition: box-shadow var(--transition-duration), transform 0.15s ease;
232}
233.card.checkout-style-background:hover {
234 box-shadow: 0 0 0 2px #ffffff;
235 transform: translateY(-2px);
236}
237
238/* Test card number */
239.test-card-notice {
240 display: block;
241 margin-block-start: 1em;
242 margin-block-end: 1em;
243 margin-inline-start: 0px;
244 margin-inline-end: 0px;
245}
246.card-number {
247 display: inline;
248 white-space: nowrap;
249 font-family: Menlo, Consolas, monospace;
250 color: #3c4257;
251 font-weight: 500;
252}
253.card-number span {
254 display: inline-block;
255 width: 4px;
256}
257
258/* Code block */
259code,
260pre {
261 font-family: "SF Mono", "IBM Plex Mono", "Menlo", monospace;
262 font-size: 12px;
263 background: rgba(255, 255, 255, 0.04);
264 padding: 12px;
265 border-radius: var(--radius);
266 max-height: 500px;
267 width: var(--page-width-max);
268 overflow: auto;
269}
270
271.banner {
272 max-width: 825px;
273 margin: 0 auto;
274 font-size: 14px;
275 background: #111827;
276 color: #e5e7eb;
277 border-radius: 50px;
278 box-shadow: 0 12px 30px rgba(0, 0, 0, 0.8),
279 0 0 0 1px rgba(255, 255, 255, 0.08);
280 display: flex;
281 align-items: center;
282 box-sizing: border-box;
283 padding: 15px;
284 line-height: 1.15;
285 position: fixed;
286 bottom: 2vh;
287 left: 0;
288 right: 0;
289 text-align: center;
290 justify-content: center;
291}
292
293@media only screen and (max-width: 980px) {
294 .container {
295 flex-direction: column;
296 }
297
298 .header-content {
299 max-width: 280px;
300 position: relative;
301 top: 0;
302 }
303
304 .card {
305 margin: 0 20px 20px 0;
306 box-shadow: none;
307 }
308
309 .card-list {
310 padding-top: 0;
311 }
312
313 .banner {
314 box-shadow: none;
315 bottom: 0;
316 }
317}
318
319@media only screen and (max-width: 600px) {
320 .container {
321 flex-direction: column;
322 }
323
324 .card {
325 display: block;
326 border-radius: 8px;
327 flex: 1 0 100%;
328 max-width: 100%;
329 padding-left: 0;
330 padding-right: 0;
331 margin: 0 0 20px 0;
332 box-shadow: none;
333 }
334
335 .card-list {
336 padding-top: 0;
337 }
338
339 code,
340 pre,
341 h3 {
342 display: none;
343 }
344
345 .banner {
346 box-shadow: none;
347 bottom: 0;
348 }
349}
350
351@theme inline {
352 --radius-sm: calc(var(--radius) - 4px);
353 --radius-md: calc(var(--radius) - 2px);
354 --radius-lg: var(--radius);
355 --radius-xl: calc(var(--radius) + 4px);
356 --radius-2xl: calc(var(--radius) + 8px);
357 --radius-3xl: calc(var(--radius) + 12px);
358 --radius-4xl: calc(var(--radius) + 16px);
359 --color-background: var(--background);
360 --color-foreground: var(--foreground);
361 --color-card: var(--card);
362 --color-card-foreground: var(--card-foreground);
363 --color-popover: var(--popover);
364 --color-popover-foreground: var(--popover-foreground);
365 --color-primary: var(--primary);
366 --color-primary-foreground: var(--primary-foreground);
367 --color-secondary: var(--secondary);
368 --color-secondary-foreground: var(--secondary-foreground);
369 --color-muted: var(--muted);
370 --color-muted-foreground: var(--muted-foreground);
371 --color-accent: var(--accent);
372 --color-accent-foreground: var(--accent-foreground);
373 --color-destructive: var(--destructive);
374 --color-border: var(--border);
375 --color-input: var(--input);
376 --color-ring: var(--ring);
377 --color-chart-1: var(--chart-1);
378 --color-chart-2: var(--chart-2);
379 --color-chart-3: var(--chart-3);
380 --color-chart-4: var(--chart-4);
381 --color-chart-5: var(--chart-5);
382 --color-sidebar: var(--sidebar);
383 --color-sidebar-foreground: var(--sidebar-foreground);
384 --color-sidebar-primary: var(--sidebar-primary);
385 --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
386 --color-sidebar-accent: var(--sidebar-accent);
387 --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
388 --color-sidebar-border: var(--sidebar-border);
389 --color-sidebar-ring: var(--sidebar-ring);
390}
391
392.dark {
393 --background: oklch(0.141 0.005 285.823);
394 --foreground: oklch(0.985 0 0);
395 --card: oklch(0.21 0.006 285.885);
396 --card-foreground: oklch(0.985 0 0);
397 --popover: oklch(0.21 0.006 285.885);
398 --popover-foreground: oklch(0.985 0 0);
399 --primary: oklch(0.92 0.004 286.32);
400 --primary-foreground: oklch(0.21 0.006 285.885);
401 --secondary: oklch(0.274 0.006 286.033);
402 --secondary-foreground: oklch(0.985 0 0);
403 --muted: oklch(0.274 0.006 286.033);
404 --muted-foreground: oklch(0.705 0.015 286.067);
405 --accent: oklch(0.274 0.006 286.033);
406 --accent-foreground: oklch(0.985 0 0);
407 --destructive: oklch(0.704 0.191 22.216);
408 --border: oklch(1 0 0 / 10%);
409 --input: oklch(1 0 0 / 15%);
410 --ring: oklch(0.552 0.016 285.938);
411 --chart-1: oklch(0.488 0.243 264.376);
412 --chart-2: oklch(0.696 0.17 162.48);
413 --chart-3: oklch(0.769 0.188 70.08);
414 --chart-4: oklch(0.627 0.265 303.9);
415 --chart-5: oklch(0.645 0.246 16.439);
416 --sidebar: oklch(0.21 0.006 285.885);
417 --sidebar-foreground: oklch(0.985 0 0);
418 --sidebar-primary: oklch(0.488 0.243 264.376);
419 --sidebar-primary-foreground: oklch(0.985 0 0);
420 --sidebar-accent: oklch(0.274 0.006 286.033);
421 --sidebar-accent-foreground: oklch(0.985 0 0);
422 --sidebar-border: oklch(1 0 0 / 10%);
423 --sidebar-ring: oklch(0.552 0.016 285.938);
424}
425
426@layer base {
427 * {
428 @apply border-border outline-ring/50;
429 }
430 body {
431 @apply bg-background text-foreground;
432 }
433}