@visualizevalue/mint-app-base 0.0.1

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.
Files changed (129) hide show
  1. package/.env.example +26 -0
  2. package/README.md +24 -0
  3. package/app/app.vue +7 -0
  4. package/app/assets/styles/animation.css +50 -0
  5. package/app/assets/styles/base.css +34 -0
  6. package/app/assets/styles/cards.css +20 -0
  7. package/app/assets/styles/custom-media.css +4 -0
  8. package/app/assets/styles/custom-selectors.css +1 -0
  9. package/app/assets/styles/forms.css +183 -0
  10. package/app/assets/styles/index.css +11 -0
  11. package/app/assets/styles/normalize.css +541 -0
  12. package/app/assets/styles/prose.css +166 -0
  13. package/app/assets/styles/scroll.css +13 -0
  14. package/app/assets/styles/text.css +14 -0
  15. package/app/assets/styles/utils.css +24 -0
  16. package/app/assets/styles/variables.css +195 -0
  17. package/app/assets/styles/web3-modals.css +26 -0
  18. package/app/components/Account.client.vue +20 -0
  19. package/app/components/Actions.vue +25 -0
  20. package/app/components/AppHeader.vue +99 -0
  21. package/app/components/Authenticated.client.vue +17 -0
  22. package/app/components/Avatar.vue +61 -0
  23. package/app/components/BlocksTimeAgo.client.vue +20 -0
  24. package/app/components/Breadcrumbs.vue +51 -0
  25. package/app/components/Button.vue +98 -0
  26. package/app/components/CardLink.vue +38 -0
  27. package/app/components/CheckSpinner.vue +39 -0
  28. package/app/components/Collection/Intro.vue +111 -0
  29. package/app/components/Collection/OverviewCard.vue +73 -0
  30. package/app/components/Collection/Withdraw.client.vue +61 -0
  31. package/app/components/CollectionsOverview.client.vue +58 -0
  32. package/app/components/Connect.client.vue +88 -0
  33. package/app/components/CountDown.vue +153 -0
  34. package/app/components/DialogFrame.vue +96 -0
  35. package/app/components/ExpandableText.vue +50 -0
  36. package/app/components/Form/Errors.vue +18 -0
  37. package/app/components/Form/Group.vue +57 -0
  38. package/app/components/Form/Input.vue +48 -0
  39. package/app/components/Form/SelectFile.vue +60 -0
  40. package/app/components/GasPrice.client.vue +9 -0
  41. package/app/components/HeaderSection.vue +18 -0
  42. package/app/components/Icon.vue +37 -0
  43. package/app/components/IconLink.vue +29 -0
  44. package/app/components/Image.client.vue +120 -0
  45. package/app/components/Loading.vue +79 -0
  46. package/app/components/MintGasPrice.client.vue +20 -0
  47. package/app/components/MintGasPricePopover.client.vue +69 -0
  48. package/app/components/MintToken.vue +89 -0
  49. package/app/components/MintTokenBar.vue +79 -0
  50. package/app/components/Modal.vue +36 -0
  51. package/app/components/Navbar.client.vue +86 -0
  52. package/app/components/Page/Frame.vue +77 -0
  53. package/app/components/Page/FrameSM.vue +33 -0
  54. package/app/components/Popover.client.vue +119 -0
  55. package/app/components/Profile/Header.client.vue +96 -0
  56. package/app/components/QueryDialog.vue +38 -0
  57. package/app/components/ToggleDarkMode.client.vue +58 -0
  58. package/app/components/Token/Detail.client.vue +194 -0
  59. package/app/components/Token/MintTimeline.client.vue +110 -0
  60. package/app/components/Token/MintTimelineItem.vue +33 -0
  61. package/app/components/Token/OverviewCard.vue +140 -0
  62. package/app/components/TransactionFlow.vue +225 -0
  63. package/app/components/Visual/ImagePreview.vue +8 -0
  64. package/app/composables/account.ts +21 -0
  65. package/app/composables/app.ts +15 -0
  66. package/app/composables/artistData.ts +22 -0
  67. package/app/composables/chainId.ts +25 -0
  68. package/app/composables/collections.ts +435 -0
  69. package/app/composables/darkMode.ts +1 -0
  70. package/app/composables/gasPrice.ts +46 -0
  71. package/app/composables/head.ts +29 -0
  72. package/app/composables/priceFeed.ts +80 -0
  73. package/app/composables/subdomain.ts +27 -0
  74. package/app/error.vue +31 -0
  75. package/app/layouts/default.vue +42 -0
  76. package/app/middleware/lowercaseId.ts +1 -0
  77. package/app/middleware/lowercaseProfileAddress.ts +1 -0
  78. package/app/middleware/redirectUserScope.ts +13 -0
  79. package/app/pages/[id]/[collection]/[tokenId]/index.vue +66 -0
  80. package/app/pages/[id]/[collection]/[tokenId].vue +25 -0
  81. package/app/pages/[id]/[collection]/index.vue +51 -0
  82. package/app/pages/[id]/[collection]/mint.vue +260 -0
  83. package/app/pages/[id]/[collection].vue +24 -0
  84. package/app/pages/[id]/add.vue +40 -0
  85. package/app/pages/[id]/create.vue +177 -0
  86. package/app/pages/[id]/index.vue +43 -0
  87. package/app/pages/[id].vue +9 -0
  88. package/app/pages/index.vue +47 -0
  89. package/app/pages/profile/[address]/index.vue +51 -0
  90. package/app/pages/profile/[address].vue +9 -0
  91. package/app/pages/profile/index.vue +28 -0
  92. package/app/plugins/1.polyfill.client.ts +12 -0
  93. package/app/plugins/2.wagmi.ts +57 -0
  94. package/app/router.options.ts +25 -0
  95. package/app/utils/abis.ts +77 -0
  96. package/app/utils/arrays.ts +1 -0
  97. package/app/utils/artifact.ts +21 -0
  98. package/app/utils/breakpoints.ts +11 -0
  99. package/app/utils/dates.ts +23 -0
  100. package/app/utils/format.ts +60 -0
  101. package/app/utils/images.ts +27 -0
  102. package/app/utils/ipfs.ts +13 -0
  103. package/app/utils/lowercaseRouteParam.ts +10 -0
  104. package/app/utils/serializer.ts +18 -0
  105. package/app/utils/strings.ts +30 -0
  106. package/app/utils/time.ts +23 -0
  107. package/app/utils/types.ts +62 -0
  108. package/app/utils/urls.ts +43 -0
  109. package/nuxt.config.ts +130 -0
  110. package/package.json +44 -0
  111. package/public/apple-touch-icon-512x512.png +0 -0
  112. package/public/example-contract-icon-original.svg +5 -0
  113. package/public/example-contract-icon.svg +5 -0
  114. package/public/favicon.ico +0 -0
  115. package/public/icon.svg +8 -0
  116. package/public/icons/check.svg +3 -0
  117. package/public/icons/opepen.svg +264 -0
  118. package/public/icons/wallets/coinbase.svg +4 -0
  119. package/public/icons/wallets/metamask.svg +1 -0
  120. package/public/icons/wallets/rainbow.svg +59 -0
  121. package/public/icons/wallets/walletconnect.svg +1 -0
  122. package/public/maskable-icon-512x512.png +0 -0
  123. package/public/pwa-192x192.png +0 -0
  124. package/public/pwa-512x512.png +0 -0
  125. package/public/pwa-64x64.png +0 -0
  126. package/server/middleware/log.ts +3 -0
  127. package/server/middleware/subdomain.ts +12 -0
  128. package/server/tsconfig.json +3 -0
  129. package/tsconfig.json +4 -0
@@ -0,0 +1,541 @@
1
+ /* Based on https://unpkg.com/tailwindcss@2.0.2/dist/base.css */
2
+
3
+ /*! modern-normalize v1.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */
4
+
5
+ /*
6
+ Document
7
+ ========
8
+ */
9
+
10
+ /**
11
+ Use a better box model (opinionated).
12
+ */
13
+
14
+ *,
15
+ *::before,
16
+ *::after {
17
+ box-sizing: border-box;
18
+ }
19
+
20
+ /**
21
+ Use a more readable tab size (opinionated).
22
+ */
23
+
24
+ :root {
25
+ -moz-tab-size: 4;
26
+ tab-size: 4;
27
+ }
28
+
29
+ /**
30
+ 1. Correct the line height in all browsers.
31
+ 2. Prevent adjustments of font size after orientation changes in iOS.
32
+ */
33
+
34
+ html {
35
+ line-height: 1.15; /* 1 */
36
+ -webkit-text-size-adjust: 100%; /* 2 */
37
+ }
38
+
39
+ /*
40
+ Sections
41
+ ========
42
+ */
43
+
44
+ /**
45
+ Remove the margin in all browsers.
46
+ */
47
+
48
+ body {
49
+ margin: 0;
50
+ }
51
+
52
+ /**
53
+ Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
54
+ */
55
+
56
+ body {
57
+ font-family:
58
+ system-ui,
59
+ -apple-system, /* Firefox supports this but not yet `system-ui` */
60
+ 'Segoe UI',
61
+ Roboto,
62
+ Helvetica,
63
+ Arial,
64
+ sans-serif,
65
+ 'Apple Color Emoji',
66
+ 'Segoe UI Emoji';
67
+ }
68
+
69
+ /*
70
+ Grouping content
71
+ ================
72
+ */
73
+
74
+ /**
75
+ 1. Add the correct height in Firefox.
76
+ 2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
77
+ */
78
+
79
+ hr {
80
+ height: 0; /* 1 */
81
+ color: inherit; /* 2 */
82
+ }
83
+
84
+ /*
85
+ Text-level semantics
86
+ ====================
87
+ */
88
+
89
+ /**
90
+ Add the correct text decoration in Chrome, Edge, and Safari.
91
+ */
92
+
93
+ abbr[title] {
94
+ -webkit-text-decoration: underline dotted;
95
+ text-decoration: underline dotted;
96
+ }
97
+
98
+ /**
99
+ Add the correct font weight in Edge and Safari.
100
+ */
101
+
102
+ b,
103
+ strong {
104
+ font-weight: bolder;
105
+ }
106
+
107
+ /**
108
+ 1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
109
+ 2. Correct the odd 'em' font sizing in all browsers.
110
+ */
111
+
112
+ code,
113
+ kbd,
114
+ samp,
115
+ pre {
116
+ font-family:
117
+ ui-monospace,
118
+ SFMono-Regular,
119
+ Consolas,
120
+ 'Liberation Mono',
121
+ Menlo,
122
+ monospace; /* 1 */
123
+ font-size: 1em; /* 2 */
124
+ }
125
+
126
+ /**
127
+ Add the correct font size in all browsers.
128
+ */
129
+
130
+ small {
131
+ font-size: 80%;
132
+ }
133
+
134
+ /**
135
+ Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
136
+ */
137
+
138
+ sub,
139
+ sup {
140
+ font-size: 75%;
141
+ line-height: 0;
142
+ position: relative;
143
+ vertical-align: baseline;
144
+ }
145
+
146
+ sub {
147
+ bottom: -0.25em;
148
+ }
149
+
150
+ sup {
151
+ top: -0.5em;
152
+ }
153
+
154
+ /*
155
+ Tabular data
156
+ ============
157
+ */
158
+
159
+ /**
160
+ 1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
161
+ 2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
162
+ */
163
+
164
+ table {
165
+ text-indent: 0; /* 1 */
166
+ border-color: inherit; /* 2 */
167
+ }
168
+
169
+ /*
170
+ Forms
171
+ =====
172
+ */
173
+
174
+ /**
175
+ 1. Change the font styles in all browsers.
176
+ 2. Remove the margin in Firefox and Safari.
177
+ */
178
+
179
+ button,
180
+ input,
181
+ optgroup,
182
+ select,
183
+ textarea {
184
+ font-family: inherit; /* 1 */
185
+ font-size: 100%; /* 1 */
186
+ line-height: 1.15; /* 1 */
187
+ margin: 0; /* 2 */
188
+ }
189
+
190
+ /**
191
+ Remove the inheritance of text transform in Edge and Firefox.
192
+ 1. Remove the inheritance of text transform in Firefox.
193
+ */
194
+
195
+ button,
196
+ select { /* 1 */
197
+ text-transform: none;
198
+ }
199
+
200
+ /**
201
+ Correct the inability to style clickable types in iOS and Safari.
202
+ */
203
+
204
+ button,
205
+ [type='button'],
206
+ [type='reset'],
207
+ [type='submit'] {
208
+ -webkit-appearance: button;
209
+ }
210
+
211
+ /**
212
+ Remove the inner border and padding in Firefox.
213
+ */
214
+
215
+ ::-moz-focus-inner {
216
+ border-style: none;
217
+ padding: 0;
218
+ }
219
+
220
+ /**
221
+ Restore the focus styles unset by the previous rule.
222
+ */
223
+
224
+ :-moz-focusring {
225
+ outline: 1px dotted ButtonText;
226
+ }
227
+
228
+ /**
229
+ Remove the additional ':invalid' styles in Firefox.
230
+ See: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737
231
+ */
232
+
233
+ :-moz-ui-invalid {
234
+ box-shadow: none;
235
+ }
236
+
237
+ /**
238
+ Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
239
+ */
240
+
241
+ legend {
242
+ padding: 0;
243
+ }
244
+
245
+ /**
246
+ Add the correct vertical alignment in Chrome and Firefox.
247
+ */
248
+
249
+ progress {
250
+ vertical-align: baseline;
251
+ }
252
+
253
+ /**
254
+ Correct the cursor style of increment and decrement buttons in Safari.
255
+ */
256
+
257
+ ::-webkit-inner-spin-button,
258
+ ::-webkit-outer-spin-button {
259
+ height: auto;
260
+ }
261
+
262
+ /**
263
+ 1. Correct the odd appearance in Chrome and Safari.
264
+ 2. Correct the outline style in Safari.
265
+ */
266
+
267
+ [type='search'] {
268
+ -webkit-appearance: textfield; /* 1 */
269
+ outline-offset: -2px; /* 2 */
270
+ }
271
+
272
+ /**
273
+ Remove the inner padding in Chrome and Safari on macOS.
274
+ */
275
+
276
+ ::-webkit-search-decoration {
277
+ -webkit-appearance: none;
278
+ }
279
+
280
+ /**
281
+ 1. Correct the inability to style clickable types in iOS and Safari.
282
+ 2. Change font properties to 'inherit' in Safari.
283
+ */
284
+
285
+ ::-webkit-file-upload-button {
286
+ -webkit-appearance: button; /* 1 */
287
+ font: inherit; /* 2 */
288
+ }
289
+
290
+ /*
291
+ Interactive
292
+ ===========
293
+ */
294
+
295
+ /*
296
+ Add the correct display in Chrome and Safari.
297
+ */
298
+
299
+ summary {
300
+ display: list-item;
301
+ }
302
+
303
+ /**
304
+ * Manually forked from SUIT CSS Base: https://github.com/suitcss/base
305
+ * A thin layer on top of normalize.css that provides a starting point more
306
+ * suitable for web applications.
307
+ */
308
+
309
+ /**
310
+ * Removes the default spacing and border for appropriate elements.
311
+ */
312
+
313
+ blockquote,
314
+ dl,
315
+ dd,
316
+ h1,
317
+ h2,
318
+ h3,
319
+ h4,
320
+ h5,
321
+ h6,
322
+ hr,
323
+ figure,
324
+ p,
325
+ pre {
326
+ margin: 0;
327
+ }
328
+
329
+ button {
330
+ background-color: transparent;
331
+ background-image: none;
332
+ }
333
+
334
+ /**
335
+ * Work around a Firefox/IE bug where the transparent `button` background
336
+ * results in a loss of the default `button` focus styles.
337
+ */
338
+
339
+ button:focus {
340
+ outline: 1px dotted;
341
+ outline: 5px auto -webkit-focus-ring-color;
342
+ }
343
+
344
+ fieldset {
345
+ margin: 0;
346
+ padding: 0;
347
+ }
348
+
349
+ ol,
350
+ ul {
351
+ list-style: none;
352
+ margin: 0;
353
+ padding: 0;
354
+ }
355
+
356
+ /**
357
+ * Tailwind custom reset styles
358
+ */
359
+
360
+ /**
361
+ * 1. Use the user's configured `sans` font-family (with Tailwind's default
362
+ * sans-serif font stack as a fallback) as a sane default.
363
+ * 2. Use Tailwind's default "normal" line-height so the user isn't forced
364
+ * to override it to ensure consistency even when using the default theme.
365
+ */
366
+
367
+ html {
368
+ font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 1 */
369
+ line-height: 1.5; /* 2 */
370
+ }
371
+
372
+ /**
373
+ * Inherit font-family and line-height from `html` so users can set them as
374
+ * a class directly on the `html` element.
375
+ */
376
+
377
+ body {
378
+ font-family: inherit;
379
+ line-height: inherit;
380
+ }
381
+
382
+ /**
383
+ * 1. Prevent padding and border from affecting element width.
384
+ *
385
+ * We used to set this in the html element and inherit from
386
+ * the parent element for everything else. This caused issues
387
+ * in shadow-dom-enhanced elements like <details> where the content
388
+ * is wrapped by a div with box-sizing set to `content-box`.
389
+ *
390
+ * https://github.com/mozdevs/cssremedy/issues/4
391
+ *
392
+ *
393
+ * 2. Allow adding a border to an element by just adding a border-width.
394
+ *
395
+ * By default, the way the browser specifies that an element should have no
396
+ * border is by setting it's border-style to `none` in the user-agent
397
+ * stylesheet.
398
+ *
399
+ * In order to easily add borders to elements by just setting the `border-width`
400
+ * property, we change the default border-style for all elements to `solid`, and
401
+ * use border-width to hide them instead. This way our `border` utilities only
402
+ * need to set the `border-width` property instead of the entire `border`
403
+ * shorthand, making our border utilities much more straightforward to compose.
404
+ *
405
+ * https://github.com/tailwindcss/tailwindcss/pull/116
406
+ */
407
+
408
+ *,
409
+ ::before,
410
+ ::after {
411
+ box-sizing: border-box; /* 1 */
412
+ border-width: 0; /* 2 */
413
+ border-style: solid; /* 2 */
414
+ border-color: #e5e7eb; /* 2 */
415
+ }
416
+
417
+ /*
418
+ * Ensure horizontal rules are visible by default
419
+ */
420
+
421
+ hr {
422
+ border-top-width: 1px;
423
+ border-color: var(--gray-z-2);
424
+ }
425
+
426
+ /**
427
+ * Undo the `border-style: none` reset that Normalize applies to images so that
428
+ * our `border-{width}` utilities have the expected effect.
429
+ *
430
+ * The Normalize reset is unnecessary for us since we default the border-width
431
+ * to 0 on all elements.
432
+ *
433
+ * https://github.com/tailwindcss/tailwindcss/issues/362
434
+ */
435
+
436
+ img {
437
+ border-style: solid;
438
+ }
439
+
440
+ textarea {
441
+ resize: vertical;
442
+ }
443
+
444
+ input::placeholder,
445
+ textarea::placeholder {
446
+ color: #9ca3af;
447
+ }
448
+
449
+ button,
450
+ [role="button"] {
451
+ cursor: pointer;
452
+ }
453
+
454
+ table {
455
+ border-collapse: collapse;
456
+ }
457
+
458
+ h1,
459
+ h2,
460
+ h3,
461
+ h4,
462
+ h5,
463
+ h6 {
464
+ font-size: inherit;
465
+ font-weight: inherit;
466
+ }
467
+
468
+ /**
469
+ * Reset links to optimize for opt-in styling instead of
470
+ * opt-out.
471
+ */
472
+
473
+ a {
474
+ color: inherit;
475
+ text-decoration: inherit;
476
+ }
477
+
478
+ /**
479
+ * Reset form element properties that are easy to forget to
480
+ * style explicitly so you don't inadvertently introduce
481
+ * styles that deviate from your design system. These styles
482
+ * supplement a partial reset that is already applied by
483
+ * normalize.css.
484
+ */
485
+
486
+ button,
487
+ input,
488
+ optgroup,
489
+ select,
490
+ textarea {
491
+ padding: 0;
492
+ line-height: inherit;
493
+ color: inherit;
494
+ }
495
+
496
+ /**
497
+ * Use the configured 'mono' font family for elements that
498
+ * are expected to be rendered with a monospace font, falling
499
+ * back to the system monospace stack if there is no configured
500
+ * 'mono' font family.
501
+ */
502
+
503
+ pre,
504
+ code,
505
+ kbd,
506
+ samp {
507
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
508
+ }
509
+
510
+ /**
511
+ * Make replaced elements `display: block` by default as that's
512
+ * the behavior you want almost all of the time. Inspired by
513
+ * CSS Remedy, with `svg` added as well.
514
+ *
515
+ * https://github.com/mozdevs/cssremedy/issues/14
516
+ */
517
+
518
+ img,
519
+ svg,
520
+ video,
521
+ canvas,
522
+ audio,
523
+ iframe,
524
+ embed,
525
+ object {
526
+ display: block;
527
+ vertical-align: middle;
528
+ }
529
+
530
+ /**
531
+ * Constrain images and videos to the parent width and preserve
532
+ * their instrinsic aspect ratio.
533
+ *
534
+ * https://github.com/mozdevs/cssremedy/issues/14
535
+ */
536
+
537
+ img,
538
+ video {
539
+ max-width: 100%;
540
+ height: auto;
541
+ }
@@ -0,0 +1,166 @@
1
+ .prose {
2
+ display: grid;
3
+ gap: var(--size-5);
4
+ grid-auto-rows: min-content;
5
+
6
+ /* HEADINGS */
7
+ h1, h2, h3 {
8
+ line-height: var(--line-height-md);
9
+ }
10
+ h1 {
11
+ font-size: var(--font-xl);
12
+ }
13
+ h2 {
14
+ font-size: var(--font-lg);
15
+ text-transform: var(--text-transform-ui);
16
+ }
17
+ h3 {
18
+ font-size: var(--font-lg);
19
+ }
20
+
21
+ /* LINKS */
22
+ a {
23
+ color: var(--primary);
24
+ font-weight: bold;
25
+ border-bottom: 3px solid transparent;
26
+ transition: all var(--speed);
27
+
28
+ &:--highlight {
29
+ border-color: var(--primary-z-2);
30
+ }
31
+ }
32
+
33
+ /* QUOTES */
34
+ blockquote {
35
+ padding-left: var(--size-5);
36
+ font-size: var(--font-md);
37
+ line-height: var(--line-height-lg);
38
+ border-left: 4px solid var(--gray-z-2);
39
+ font-style: italic;
40
+ font-weight: bold;
41
+ color: var(--gray-z-7);
42
+ position: relative;
43
+
44
+ cite {
45
+ display: block;
46
+ font-size: var(--font-sm);
47
+ line-height: var(--line-height-sm);
48
+ text-align: right;
49
+ margin: 1em 0 0;
50
+
51
+ &:before {
52
+ content: "–";
53
+ margin-right: 0.5em;
54
+ }
55
+ }
56
+ }
57
+
58
+ pre {
59
+ background: var(--gray-z-1);
60
+ padding: var(--spacer);
61
+ border: var(--border);
62
+ color: var(--gray-z-7);
63
+ border-radius: var(--size-2);
64
+
65
+ code {
66
+ font-family: monospace;
67
+ font-size: var(--font-sm);
68
+ line-height: var(--line-height-lg);
69
+ }
70
+ }
71
+
72
+ /* IMAGES */
73
+ p:has(> img) {
74
+ font-size: var(--font-xs);
75
+ line-height: var(--line-height-xs);
76
+ color: var(--gray-z-7);
77
+ }
78
+ img {
79
+ border: var(--border);
80
+ border-radius: var(--border-radius);
81
+ }
82
+
83
+ /* LISTS */
84
+ ol { list-style: auto; }
85
+ ul {
86
+ list-style: none;
87
+
88
+ > li {
89
+ position: relative;
90
+ }
91
+
92
+ > li:before {
93
+ content: "\2022";
94
+ position: absolute;
95
+ color: var(--gray-z-5);
96
+ font-weight: bold;
97
+ display: inline-block;
98
+ width: 1em;
99
+ margin-left: -1em;
100
+ }
101
+ }
102
+ ul, ol {
103
+ padding-left: 1em;
104
+
105
+ li {
106
+ margin: 0.25em 0;
107
+ }
108
+
109
+ ul, ol {
110
+ margin: 0;
111
+
112
+ li {
113
+ margin: 0;
114
+ }
115
+ }
116
+ }
117
+ }
118
+
119
+ /* MINIMAL PROSE */
120
+ .minimal-prose {
121
+ h1, h2, h3 {
122
+ width: min-content;
123
+ position: relative;
124
+ white-space: nowrap;
125
+ margin: var(--spacer) 0;
126
+ color: var(--color);
127
+
128
+ &:after {
129
+ content: '';
130
+ position: absolute;
131
+ width: calc(100% + var(--spacer-xs)*2);
132
+ left: calc(-1 * var(--spacer-xs));
133
+ bottom: calc(-1 * var(--spacer-xs));
134
+ border-bottom: 3px solid var(--border-color);
135
+ }
136
+ }
137
+
138
+ > table {
139
+ margin: var(--spacer) 0;
140
+
141
+ td {
142
+ padding: calc(var(--spacer-sm) - var(--spacer-xs)) var(--spacer-sm);
143
+ border: var(--border);
144
+ }
145
+ }
146
+
147
+ > * {
148
+ margin: var(--spacer-sm) 0;
149
+ color: var(--gray-z-7);
150
+
151
+ &:first-child {
152
+ margin-top: 0;
153
+ }
154
+
155
+ &:last-child {
156
+ margin-bottom: 0;
157
+ }
158
+ }
159
+ }
160
+
161
+ /* GENERAL HINT RULES */
162
+ p {
163
+ a {
164
+ text-decoration: underline;
165
+ }
166
+ }
@@ -0,0 +1,13 @@
1
+ .hide-scrollbar {
2
+ -ms-overflow-style: none;
3
+ scrollbar-width: none;
4
+
5
+ &::-webkit-scrollbar {
6
+ display: none;
7
+ }
8
+ }
9
+
10
+ .scroll-x {
11
+ overflow-x: auto !important;
12
+ -webkit-overflow-scrolling: auto;
13
+ }
@@ -0,0 +1,14 @@
1
+ h1.display {
2
+ font-size: var(--font-display);
3
+ }
4
+ h1.title {
5
+ font-size: var(--font-title);
6
+ }
7
+
8
+ .lead {
9
+ font-size: var(--font-lg);
10
+ }
11
+
12
+ .centered {
13
+ text-align: center;
14
+ }