@kreftforeningen/web-css 1.0.0
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.
- package/LICENSE +21 -0
- package/README.md +60 -0
- package/assets/fonts/ibm-plex-sans-condensed-v14-latin-600.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-condensed-v14-latin-600italic.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-condensed-v14-latin-italic.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-condensed-v14-latin-regular.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-v22-latin-500.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-v22-latin-500italic.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-v22-latin-600.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-v22-latin-600italic.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-v22-latin-700.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-v22-latin-700italic.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-v22-latin-italic.woff2 +0 -0
- package/assets/fonts/ibm-plex-sans-v22-latin-regular.woff2 +0 -0
- package/assets/fonts/ibm-plex-serif-v19-latin-600.woff2 +0 -0
- package/assets/fonts/ibm-plex-serif-v19-latin-600italic.woff2 +0 -0
- package/assets/fonts/ibm-plex-serif-v19-latin-italic.woff2 +0 -0
- package/assets/fonts/ibm-plex-serif-v19-latin-regular.woff2 +0 -0
- package/fonts/ibm-plex-sans-condensed.css +36 -0
- package/fonts/ibm-plex-sans.css +69 -0
- package/fonts/ibm-plex-serif.css +36 -0
- package/fonts/index.css +3 -0
- package/index.css +420 -0
- package/json/basic-colors.json +82 -0
- package/json/extended-colors.json +429 -0
- package/json/pink-ribbon-colors.json +63 -0
- package/json/vipps-colors.json +63 -0
- package/package.json +37 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Kreftforeningen
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# @kreftforeningen/web-css
|
|
2
|
+
|
|
3
|
+
Style variables for Kreftforeningen.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
- `pnpm add @kreftforeningen/web-css`
|
|
8
|
+
- `@import "@kreftforeningen/web-css";` at the top of your main css file
|
|
9
|
+
|
|
10
|
+
## Content
|
|
11
|
+
|
|
12
|
+
### Semantic elements
|
|
13
|
+
|
|
14
|
+
Basic styling for semantic elements such as:
|
|
15
|
+
|
|
16
|
+
- Headings
|
|
17
|
+
- Blockquote
|
|
18
|
+
|
|
19
|
+
### Colors
|
|
20
|
+
|
|
21
|
+
Colors in oklch. Main colors also in hex.
|
|
22
|
+
|
|
23
|
+
- KF Blue
|
|
24
|
+
- KF Green
|
|
25
|
+
- KF Orange
|
|
26
|
+
- KF Red
|
|
27
|
+
- KF Pink
|
|
28
|
+
- KF Purple
|
|
29
|
+
- Gray
|
|
30
|
+
- Black
|
|
31
|
+
- White
|
|
32
|
+
- Vipps
|
|
33
|
+
|
|
34
|
+
### Fonts
|
|
35
|
+
|
|
36
|
+
- IBM Plex Sans
|
|
37
|
+
- IBM Plex Condesed
|
|
38
|
+
- IBM Plex Serif
|
|
39
|
+
|
|
40
|
+
### Animations
|
|
41
|
+
|
|
42
|
+
- Pulsating text
|
|
43
|
+
- Fade in / fade out
|
|
44
|
+
|
|
45
|
+
## Color Extraction
|
|
46
|
+
|
|
47
|
+
To extract all color variables from the CSS into JSON files, run:
|
|
48
|
+
|
|
49
|
+
```sh
|
|
50
|
+
pnpm run build
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
This will generate:
|
|
54
|
+
|
|
55
|
+
- `json/colors.json` with all `--kf-hex-color-***` variables
|
|
56
|
+
- `json/extended-colors.json` with all `--color-***` variables from the `@theme { ... }` block
|
|
57
|
+
|
|
58
|
+
## NPM.js
|
|
59
|
+
|
|
60
|
+
This git is published as a package on https://www.npmjs.com/package/@kreftforeningen/web-css
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/* ibm-plex-sans-condensed-regular - latin */
|
|
2
|
+
@font-face {
|
|
3
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
4
|
+
font-family: 'IBM Plex Sans Condensed';
|
|
5
|
+
font-style: normal;
|
|
6
|
+
font-weight: 400;
|
|
7
|
+
src: url('../assets/fonts/ibm-plex-sans-condensed-v14-latin-regular.woff2')
|
|
8
|
+
format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
9
|
+
}
|
|
10
|
+
/* ibm-plex-sans-condensed-italic - latin */
|
|
11
|
+
@font-face {
|
|
12
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
13
|
+
font-family: 'IBM Plex Sans Condensed';
|
|
14
|
+
font-style: italic;
|
|
15
|
+
font-weight: 400;
|
|
16
|
+
src: url('../assets/fonts/ibm-plex-sans-condensed-v14-latin-italic.woff2')
|
|
17
|
+
format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
18
|
+
}
|
|
19
|
+
/* ibm-plex-sans-condensed-600 - latin */
|
|
20
|
+
@font-face {
|
|
21
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
22
|
+
font-family: 'IBM Plex Sans Condensed';
|
|
23
|
+
font-style: normal;
|
|
24
|
+
font-weight: 600;
|
|
25
|
+
src: url('../assets/fonts/ibm-plex-sans-condensed-v14-latin-600.woff2')
|
|
26
|
+
format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
27
|
+
}
|
|
28
|
+
/* ibm-plex-sans-condensed-600italic - latin */
|
|
29
|
+
@font-face {
|
|
30
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
31
|
+
font-family: 'IBM Plex Sans Condensed';
|
|
32
|
+
font-style: italic;
|
|
33
|
+
font-weight: 600;
|
|
34
|
+
src: url('../assets/fonts/ibm-plex-sans-condensed-v14-latin-600italic.woff2')
|
|
35
|
+
format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
36
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/* ibm-plex-sans-regular - latin */
|
|
2
|
+
@font-face {
|
|
3
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
4
|
+
font-family: "IBM Plex Sans";
|
|
5
|
+
font-style: normal;
|
|
6
|
+
font-weight: 400;
|
|
7
|
+
src: url("../assets/fonts/ibm-plex-sans-v22-latin-regular.woff2")
|
|
8
|
+
format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
9
|
+
}
|
|
10
|
+
/* ibm-plex-sans-italic - latin */
|
|
11
|
+
@font-face {
|
|
12
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
13
|
+
font-family: "IBM Plex Sans";
|
|
14
|
+
font-style: italic;
|
|
15
|
+
font-weight: 400;
|
|
16
|
+
src: url("../assets/fonts/ibm-plex-sans-v22-latin-italic.woff2")
|
|
17
|
+
format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
18
|
+
}
|
|
19
|
+
/* ibm-plex-sans-500 - latin */
|
|
20
|
+
@font-face {
|
|
21
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
22
|
+
font-family: "IBM Plex Sans";
|
|
23
|
+
font-style: normal;
|
|
24
|
+
font-weight: 500;
|
|
25
|
+
src: url("../assets/fonts/ibm-plex-sans-v22-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
26
|
+
}
|
|
27
|
+
/* ibm-plex-sans-500italic - latin */
|
|
28
|
+
@font-face {
|
|
29
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
30
|
+
font-family: "IBM Plex Sans";
|
|
31
|
+
font-style: italic;
|
|
32
|
+
font-weight: 500;
|
|
33
|
+
src: url("../assets/fonts/ibm-plex-sans-v22-latin-500italic.woff2")
|
|
34
|
+
format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
35
|
+
}
|
|
36
|
+
/* ibm-plex-sans-600 - latin */
|
|
37
|
+
@font-face {
|
|
38
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
39
|
+
font-family: "IBM Plex Sans";
|
|
40
|
+
font-style: normal;
|
|
41
|
+
font-weight: 600;
|
|
42
|
+
src: url("../assets/fonts/ibm-plex-sans-v22-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
43
|
+
}
|
|
44
|
+
/* ibm-plex-sans-600italic - latin */
|
|
45
|
+
@font-face {
|
|
46
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
47
|
+
font-family: "IBM Plex Sans";
|
|
48
|
+
font-style: italic;
|
|
49
|
+
font-weight: 600;
|
|
50
|
+
src: url("../assets/fonts/ibm-plex-sans-v22-latin-600italic.woff2")
|
|
51
|
+
format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
52
|
+
}
|
|
53
|
+
/* ibm-plex-sans-700 - latin */
|
|
54
|
+
@font-face {
|
|
55
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
56
|
+
font-family: "IBM Plex Sans";
|
|
57
|
+
font-style: normal;
|
|
58
|
+
font-weight: 700;
|
|
59
|
+
src: url("../assets/fonts/ibm-plex-sans-v22-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
60
|
+
}
|
|
61
|
+
/* ibm-plex-sans-700italic - latin */
|
|
62
|
+
@font-face {
|
|
63
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
64
|
+
font-family: "IBM Plex Sans";
|
|
65
|
+
font-style: italic;
|
|
66
|
+
font-weight: 700;
|
|
67
|
+
src: url("../assets/fonts/ibm-plex-sans-v22-latin-700italic.woff2")
|
|
68
|
+
format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
69
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/* ibm-plex-serif-regular - latin */
|
|
2
|
+
@font-face {
|
|
3
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
4
|
+
font-family: 'IBM Plex Serif';
|
|
5
|
+
font-style: normal;
|
|
6
|
+
font-weight: 400;
|
|
7
|
+
src: url('../assets/fonts/ibm-plex-serif-v19-latin-regular.woff2')
|
|
8
|
+
format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
9
|
+
}
|
|
10
|
+
/* ibm-plex-serif-italic - latin */
|
|
11
|
+
@font-face {
|
|
12
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
13
|
+
font-family: 'IBM Plex Serif';
|
|
14
|
+
font-style: italic;
|
|
15
|
+
font-weight: 400;
|
|
16
|
+
src: url('../assets/fonts/ibm-plex-serif-v19-latin-italic.woff2')
|
|
17
|
+
format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
18
|
+
}
|
|
19
|
+
/* ibm-plex-serif-600 - latin */
|
|
20
|
+
@font-face {
|
|
21
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
22
|
+
font-family: 'IBM Plex Serif';
|
|
23
|
+
font-style: normal;
|
|
24
|
+
font-weight: 600;
|
|
25
|
+
src: url('../assets/fonts/ibm-plex-serif-v19-latin-600.woff2')
|
|
26
|
+
format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
27
|
+
}
|
|
28
|
+
/* ibm-plex-serif-600italic - latin */
|
|
29
|
+
@font-face {
|
|
30
|
+
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
|
31
|
+
font-family: 'IBM Plex Serif';
|
|
32
|
+
font-style: italic;
|
|
33
|
+
font-weight: 600;
|
|
34
|
+
src: url('../assets/fonts/ibm-plex-serif-v19-latin-600italic.woff2')
|
|
35
|
+
format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
|
|
36
|
+
}
|
package/fonts/index.css
ADDED
package/index.css
ADDED
|
@@ -0,0 +1,420 @@
|
|
|
1
|
+
@import "./fonts/index.css";
|
|
2
|
+
|
|
3
|
+
/* Dark mode support */
|
|
4
|
+
@custom-variant dark (&:is(.dark *));
|
|
5
|
+
|
|
6
|
+
@theme {
|
|
7
|
+
--font-plex-sans: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system,
|
|
8
|
+
BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica Neue, Arial, "Noto Sans",
|
|
9
|
+
sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol,
|
|
10
|
+
Noto Color Emoji;
|
|
11
|
+
--font-plex-condensed: "IBM Plex Sans Condensed", ui-sans-serif, system-ui;
|
|
12
|
+
--font-plex-serif: "IBM Plex Serif", ui-serif, Georgia, Cambria,
|
|
13
|
+
Times New Roman;
|
|
14
|
+
|
|
15
|
+
--kf-hex-color-black: #000;
|
|
16
|
+
--kf-hex-color-white: #fff;
|
|
17
|
+
--kf-hex-color-blue: #469eba;
|
|
18
|
+
--kf-hex-color-green: #50750f;
|
|
19
|
+
--kf-hex-color-gray: #666;
|
|
20
|
+
--kf-hex-color-orange: #e49034;
|
|
21
|
+
--kf-hex-color-pink: #a94773;
|
|
22
|
+
--kf-hex-color-purple: #773e89;
|
|
23
|
+
--kf-hex-color-red: #bc2967;
|
|
24
|
+
--kf-hex-color-vipps: #ff5b24;
|
|
25
|
+
|
|
26
|
+
--color-gray-50: oklch(98.5% 0 0);
|
|
27
|
+
--color-gray-100: oklch(96.086% 0 0);
|
|
28
|
+
--color-gray-200: oklch(90.372% 0 0);
|
|
29
|
+
--color-gray-300: oklch(84.258% 0 0);
|
|
30
|
+
--color-gray-400: oklch(67.144% 0 0);
|
|
31
|
+
--color-gray-500: oklch(51.03% 0 0);
|
|
32
|
+
--color-gray-600: oklch(40.244% 0 0);
|
|
33
|
+
--color-gray-700: oklch(34.358% 0 0);
|
|
34
|
+
--color-gray-800: oklch(25.072% 0 0);
|
|
35
|
+
--color-gray-900: oklch(19.586% 0 0);
|
|
36
|
+
--color-gray-950: oklch(14.5% 0 0);
|
|
37
|
+
|
|
38
|
+
--color-blue-50: oklch(0.976 0.0099 212.52);
|
|
39
|
+
--color-blue-100: oklch(0.9358 0.0222 214.4);
|
|
40
|
+
--color-blue-200: oklch(0.8772 0.0412 215.93);
|
|
41
|
+
--color-blue-300: oklch(0.7887 0.0665 218.51);
|
|
42
|
+
--color-blue-400: oklch(0.657 0.0931 221.93);
|
|
43
|
+
--color-blue-500: oklch(0.5886 0.0889 224.07);
|
|
44
|
+
--color-blue-600: oklch(0.5124 0.0769 229.13);
|
|
45
|
+
--color-blue-700: oklch(0.5124 0.0769 229.13);
|
|
46
|
+
--color-blue-800: oklch(0.3997 0.0503 235.21);
|
|
47
|
+
--color-blue-900: oklch(0.3648 0.0411 234.81);
|
|
48
|
+
--color-blue-950: oklch(0.28 0.025 235);
|
|
49
|
+
|
|
50
|
+
--color-green-50: oklch(0.9872 0.0305 116.92);
|
|
51
|
+
--color-green-100: oklch(0.9691 0.0651 119.69);
|
|
52
|
+
--color-green-200: oklch(0.9405 0.117 121.33);
|
|
53
|
+
--color-green-300: oklch(0.9016 0.1722 123.57);
|
|
54
|
+
--color-green-400: oklch(0.8544 0.2 125.89);
|
|
55
|
+
--color-green-500: oklch(0.7727 0.197 128.01);
|
|
56
|
+
--color-green-600: oklch(0.6515 0.1688 128.88);
|
|
57
|
+
--color-green-700: oklch(0.5154 0.13 128.84);
|
|
58
|
+
--color-green-800: oklch(0.4535 0.1081 128.33);
|
|
59
|
+
--color-green-900: oklch(0.4078 0.0932 128.75);
|
|
60
|
+
--color-green-950: oklch(0.32 0.06 128.75);
|
|
61
|
+
|
|
62
|
+
--color-orange-50: oklch(0.9825 0.0139 88.68);
|
|
63
|
+
--color-orange-100: oklch(0.9577 0.0325 85.48);
|
|
64
|
+
--color-orange-200: oklch(0.9095 0.0631 82.59);
|
|
65
|
+
--color-orange-300: oklch(0.8501 0.0996 80.17);
|
|
66
|
+
--color-orange-400: oklch(0.7703 0.1289 70.5);
|
|
67
|
+
--color-orange-500: oklch(0.725 0.144 63.7);
|
|
68
|
+
--color-orange-600: oklch(0.6535 0.1495 54.57);
|
|
69
|
+
--color-orange-700: oklch(0.5599 0.1325 50.09);
|
|
70
|
+
--color-orange-800: oklch(0.4782 0.1085 47.64);
|
|
71
|
+
--color-orange-900: oklch(0.4178 0.088 49.08);
|
|
72
|
+
--color-orange-950: oklch(0.3 0.045 49);
|
|
73
|
+
|
|
74
|
+
--color-pink-50: oklch(0.9737 0.0091 341.8);
|
|
75
|
+
--color-pink-100: oklch(0.9523 0.0167 343.62);
|
|
76
|
+
--color-pink-200: oklch(0.9079 0.0348 342.2);
|
|
77
|
+
--color-pink-300: oklch(0.8351 0.0636 344.23);
|
|
78
|
+
--color-pink-400: oklch(0.7329 0.1021 347.04);
|
|
79
|
+
--color-pink-500: oklch(0.6489 0.1302 350.65);
|
|
80
|
+
--color-pink-600: oklch(0.5394 0.1371 354.63);
|
|
81
|
+
--color-pink-700: oklch(0.4964 0.1319 357.16);
|
|
82
|
+
--color-pink-800: oklch(0.4393 0.1104 357.11);
|
|
83
|
+
--color-pink-900: oklch(0.3962 0.0913 357.33);
|
|
84
|
+
--color-pink-950: oklch(0.3 0.05 357);
|
|
85
|
+
|
|
86
|
+
--color-purple-50: oklch(0.9798 0.0073 312.3);
|
|
87
|
+
--color-purple-100: oklch(0.9577 0.0163 313.61);
|
|
88
|
+
--color-purple-200: oklch(0.9106 0.036 313.04);
|
|
89
|
+
--color-purple-300: oklch(0.8398 0.0666 314.75);
|
|
90
|
+
--color-purple-400: oklch(0.7463 0.1056 315.99);
|
|
91
|
+
--color-purple-500: oklch(0.6416 0.142 316.18);
|
|
92
|
+
--color-purple-600: oklch(0.5447 0.1517 316.45);
|
|
93
|
+
--color-purple-700: oklch(0.4668 0.1309 317.52);
|
|
94
|
+
--color-purple-800: oklch(0.4166 0.1125 318.19);
|
|
95
|
+
--color-purple-900: oklch(0.3771 0.0897 319.73);
|
|
96
|
+
--color-purple-950: oklch(0.28 0.045 320);
|
|
97
|
+
|
|
98
|
+
--color-red-50: oklch(0.9725 0.0116 342.64);
|
|
99
|
+
--color-red-100: oklch(0.9504 0.0226 341.32);
|
|
100
|
+
--color-red-200: oklch(0.9029 0.0477 343.59);
|
|
101
|
+
--color-red-300: oklch(0.8271 0.0903 345.8);
|
|
102
|
+
--color-red-400: oklch(0.7264 0.1478 348.51);
|
|
103
|
+
--color-red-500: oklch(0.6499 0.1827 352.33);
|
|
104
|
+
--color-red-600: oklch(0.5774 0.1919 357.53);
|
|
105
|
+
--color-red-700: oklch(0.5345 0.1873 0.79);
|
|
106
|
+
--color-red-800: oklch(0.4672 0.1827 357.53);
|
|
107
|
+
--color-red-900: oklch(0.4008 0.1269 359.23);
|
|
108
|
+
--color-red-950: oklch(0.28 0.06 0);
|
|
109
|
+
|
|
110
|
+
--color-vipps-50: oklch(0.9738 0.0151 54.93);
|
|
111
|
+
--color-vipps-100: oklch(0.9405 0.0365 58.04);
|
|
112
|
+
--color-vipps-200: oklch(0.8756 0.0758 52.88);
|
|
113
|
+
--color-vipps-300: oklch(0.7972 0.128 49.18);
|
|
114
|
+
--color-vipps-400: oklch(0.7127 0.1871 40.96);
|
|
115
|
+
--color-vipps-500: oklch(0.6838 0.2092 37.3);
|
|
116
|
+
--color-vipps-600: oklch(0.6186 0.2288 32.46);
|
|
117
|
+
--color-vipps-700: oklch(0.5336 0.202 31.27);
|
|
118
|
+
--color-vipps-800: oklch(0.4522 0.1675 30.24);
|
|
119
|
+
--color-vipps-900: oklch(41.745% 0.1198 34.356);
|
|
120
|
+
--color-vipps-950: oklch(0.2557 0.0904 29.55);
|
|
121
|
+
|
|
122
|
+
--color-pink-ribbon-50: oklch(0.93611 0.03855 348.82);
|
|
123
|
+
--color-pink-ribbon-100: oklch(0.86806 0.07588 349.94);
|
|
124
|
+
--color-pink-ribbon-200: oklch(0.80001 0.11321 351.06);
|
|
125
|
+
--color-pink-ribbon-300: oklch(0.73196 0.15054 352.18);
|
|
126
|
+
--color-pink-ribbon-400: oklch(0.66391 0.18787 353.31);
|
|
127
|
+
--color-pink-ribbon-500: oklch(0.59586 0.2252 354.43);
|
|
128
|
+
--color-pink-ribbon-600: oklch(0.584 0.22433 354.37);
|
|
129
|
+
--color-pink-ribbon-700: oklch(0.57213 0.22346 354.3);
|
|
130
|
+
--color-pink-ribbon-800: oklch(0.56027 0.22259 354.24);
|
|
131
|
+
--color-pink-ribbon-900: oklch(0.54841 0.22173 354.18);
|
|
132
|
+
--color-pink-ribbon-950: oklch(0.53654 0.22086 354.12);
|
|
133
|
+
|
|
134
|
+
--animate-pulse-text: pulseText 1s ease-in-out infinite;
|
|
135
|
+
--animate-fade-in-out: fade-in-out 5s ease-in-out;
|
|
136
|
+
|
|
137
|
+
@keyframes fade-in-out {
|
|
138
|
+
0% {
|
|
139
|
+
opacity: 0;
|
|
140
|
+
}
|
|
141
|
+
25% {
|
|
142
|
+
opacity: 1;
|
|
143
|
+
}
|
|
144
|
+
75% {
|
|
145
|
+
opacity: 1;
|
|
146
|
+
}
|
|
147
|
+
100% {
|
|
148
|
+
opacity: 0;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
@keyframes pulseText {
|
|
153
|
+
0%,
|
|
154
|
+
100% {
|
|
155
|
+
opacity: 1;
|
|
156
|
+
}
|
|
157
|
+
50% {
|
|
158
|
+
opacity: 0.5;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
@theme inline {
|
|
164
|
+
--font-sans: var(--font-plex-sans);
|
|
165
|
+
--font-condensed: var(--font-plex-condensed);
|
|
166
|
+
--font-serif: var(--font-plex-serif);
|
|
167
|
+
|
|
168
|
+
--color-black: oklch(0% 0 0);
|
|
169
|
+
--color-white: oklch(100% 0 0);
|
|
170
|
+
--color-blue: var(--color-blue-600);
|
|
171
|
+
--color-green: var(--color-green-700);
|
|
172
|
+
--color-gray: var(--color-gray-500);
|
|
173
|
+
--color-orange: var(--color-orange-400);
|
|
174
|
+
--color-pink: var(--color-pink-700);
|
|
175
|
+
--color-purple: var(--color-purple-900);
|
|
176
|
+
--color-red: var(--color-red-700);
|
|
177
|
+
--color-vipps: var(--color-vipps-600);
|
|
178
|
+
|
|
179
|
+
--color-primary: var(--color-blue-600);
|
|
180
|
+
--color-secondary: var(--color-pink-700);
|
|
181
|
+
|
|
182
|
+
--color-background: var(--color-gray-50);
|
|
183
|
+
--color-foreground: var(--color-gray-950);
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
:root {
|
|
187
|
+
--kf-border-width: 2px;
|
|
188
|
+
--kf-radius-full: 9999px;
|
|
189
|
+
--kf-radius-md: 0.375rem;
|
|
190
|
+
--kf-btn-font-size: 1rem;
|
|
191
|
+
--kf-btn-font-weight: 500;
|
|
192
|
+
--kf-btn-gap: 0.5rem;
|
|
193
|
+
--kf-btn-text: #0b1220;
|
|
194
|
+
--kf-btn-icon-size: 1rem;
|
|
195
|
+
|
|
196
|
+
/* Extended radius scale */
|
|
197
|
+
--kf-radius-none: 0rem;
|
|
198
|
+
--kf-radius-sm: 0.125rem;
|
|
199
|
+
--kf-radius: 0.25rem;
|
|
200
|
+
--kf-radius-lg: 0.5rem;
|
|
201
|
+
--kf-radius-xl: 0.75rem;
|
|
202
|
+
--kf-radius-2xl: 1rem;
|
|
203
|
+
--kf-radius-3xl: 1.5rem;
|
|
204
|
+
--kf-radius-4xl: 2rem;
|
|
205
|
+
|
|
206
|
+
/* Extended border widths */
|
|
207
|
+
--kf-border-0: 0px;
|
|
208
|
+
--kf-border-1: 1px;
|
|
209
|
+
--kf-border-2: 2px;
|
|
210
|
+
--kf-border-4: 4px;
|
|
211
|
+
--kf-border-8: 8px;
|
|
212
|
+
|
|
213
|
+
/* Font-size scale */
|
|
214
|
+
--kf-font-size-xs: 0.75rem;
|
|
215
|
+
--kf-font-size-sm: 0.875rem;
|
|
216
|
+
--kf-font-size-md: 1rem;
|
|
217
|
+
--kf-font-size-lg: 1.125rem;
|
|
218
|
+
--kf-font-size-xl: 1.25rem;
|
|
219
|
+
|
|
220
|
+
/* Button sizing tokens */
|
|
221
|
+
--kf-btn-height-sm: 36px;
|
|
222
|
+
--kf-btn-height-md: 44px;
|
|
223
|
+
--kf-btn-height-lg: 48px;
|
|
224
|
+
--kf-btn-height-icon: 36px;
|
|
225
|
+
--kf-btn-px-sm: 0.75rem;
|
|
226
|
+
--kf-btn-px-md: 1rem;
|
|
227
|
+
--kf-btn-px-lg: 1.5rem;
|
|
228
|
+
--kf-btn-icon-size-sm: 0.875rem;
|
|
229
|
+
--kf-btn-icon-size-md: 1rem;
|
|
230
|
+
--kf-btn-icon-size-lg: 1.125rem;
|
|
231
|
+
|
|
232
|
+
/* Core tokens (KF-prefixed) */
|
|
233
|
+
--kf-spacing: 0.25rem;
|
|
234
|
+
|
|
235
|
+
/* Breakpoints */
|
|
236
|
+
--kf-breakpoint-sm: 40rem;
|
|
237
|
+
--kf-breakpoint-md: 48rem;
|
|
238
|
+
--kf-breakpoint-lg: 64rem;
|
|
239
|
+
--kf-breakpoint-xl: 80rem;
|
|
240
|
+
--kf-breakpoint-2xl: 96rem;
|
|
241
|
+
|
|
242
|
+
/* Containers */
|
|
243
|
+
--kf-container-3xs: 16rem;
|
|
244
|
+
--kf-container-2xs: 18rem;
|
|
245
|
+
--kf-container-xs: 20rem;
|
|
246
|
+
--kf-container-sm: 24rem;
|
|
247
|
+
--kf-container-md: 28rem;
|
|
248
|
+
--kf-container-lg: 32rem;
|
|
249
|
+
--kf-container-xl: 36rem;
|
|
250
|
+
--kf-container-2xl: 42rem;
|
|
251
|
+
--kf-container-3xl: 48rem;
|
|
252
|
+
--kf-container-4xl: 56rem;
|
|
253
|
+
--kf-container-5xl: 64rem;
|
|
254
|
+
--kf-container-6xl: 72rem;
|
|
255
|
+
--kf-container-7xl: 80rem;
|
|
256
|
+
|
|
257
|
+
/* Typography scale with line-height ratios */
|
|
258
|
+
--kf-text-xs: 0.75rem;
|
|
259
|
+
--kf-text-xs--line-height: calc(1 / 0.75);
|
|
260
|
+
--kf-text-sm: 0.875rem;
|
|
261
|
+
--kf-text-sm--line-height: calc(1.25 / 0.875);
|
|
262
|
+
--kf-text-base: 1rem;
|
|
263
|
+
--kf-text-base--line-height: calc(1.5 / 1);
|
|
264
|
+
--kf-text-lg: 1.125rem;
|
|
265
|
+
--kf-text-lg--line-height: calc(1.75 / 1.125);
|
|
266
|
+
--kf-text-xl: 1.25rem;
|
|
267
|
+
--kf-text-xl--line-height: calc(1.75 / 1.25);
|
|
268
|
+
--kf-text-2xl: 1.5rem;
|
|
269
|
+
--kf-text-2xl--line-height: calc(2 / 1.5);
|
|
270
|
+
--kf-text-3xl: 1.875rem;
|
|
271
|
+
--kf-text-3xl--line-height: calc(2.25 / 1.875);
|
|
272
|
+
--kf-text-4xl: 2.25rem;
|
|
273
|
+
--kf-text-4xl--line-height: calc(2.5 / 2.25);
|
|
274
|
+
--kf-text-5xl: 3rem;
|
|
275
|
+
--kf-text-5xl--line-height: 1;
|
|
276
|
+
--kf-text-6xl: 3.75rem;
|
|
277
|
+
--kf-text-6xl--line-height: 1;
|
|
278
|
+
--kf-text-7xl: 4.5rem;
|
|
279
|
+
--kf-text-7xl--line-height: 1;
|
|
280
|
+
--kf-text-8xl: 6rem;
|
|
281
|
+
--kf-text-8xl--line-height: 1;
|
|
282
|
+
--kf-text-9xl: 8rem;
|
|
283
|
+
--kf-text-9xl--line-height: 1;
|
|
284
|
+
|
|
285
|
+
/* Font weights */
|
|
286
|
+
--kf-font-weight-thin: 100;
|
|
287
|
+
--kf-font-weight-extralight: 200;
|
|
288
|
+
--kf-font-weight-light: 300;
|
|
289
|
+
--kf-font-weight-normal: 400;
|
|
290
|
+
--kf-font-weight-medium: 500;
|
|
291
|
+
--kf-font-weight-semibold: 600;
|
|
292
|
+
--kf-font-weight-bold: 700;
|
|
293
|
+
--kf-font-weight-extrabold: 800;
|
|
294
|
+
--kf-font-weight-black: 900;
|
|
295
|
+
|
|
296
|
+
/* Letter spacing */
|
|
297
|
+
--kf-tracking-tighter: -0.05em;
|
|
298
|
+
--kf-tracking-tight: -0.025em;
|
|
299
|
+
--kf-tracking-normal: 0em;
|
|
300
|
+
--kf-tracking-wide: 0.025em;
|
|
301
|
+
--kf-tracking-wider: 0.05em;
|
|
302
|
+
--kf-tracking-widest: 0.1em;
|
|
303
|
+
|
|
304
|
+
/* Leading (line-height multiples) */
|
|
305
|
+
--kf-leading-tight: 1.25;
|
|
306
|
+
--kf-leading-snug: 1.375;
|
|
307
|
+
--kf-leading-normal: 1.5;
|
|
308
|
+
--kf-leading-relaxed: 1.625;
|
|
309
|
+
--kf-leading-loose: 2;
|
|
310
|
+
|
|
311
|
+
/* Shadows */
|
|
312
|
+
--kf-shadow-2xs: 0 1px rgb(0 0 0 / 0.05);
|
|
313
|
+
--kf-shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
314
|
+
--kf-shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
|
|
315
|
+
--kf-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1),
|
|
316
|
+
0 2px 4px -2px rgb(0 0 0 / 0.1);
|
|
317
|
+
--kf-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1),
|
|
318
|
+
0 4px 6px -4px rgb(0 0 0 / 0.1);
|
|
319
|
+
--kf-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1),
|
|
320
|
+
0 8px 10px -6px rgb(0 0 0 / 0.1);
|
|
321
|
+
--kf-shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
|
|
322
|
+
|
|
323
|
+
/* Inset shadows */
|
|
324
|
+
--kf-inset-shadow-2xs: inset 0 1px rgb(0 0 0 / 0.05);
|
|
325
|
+
--kf-inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.05);
|
|
326
|
+
--kf-inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / 0.05);
|
|
327
|
+
|
|
328
|
+
/* Drop shadows */
|
|
329
|
+
--kf-drop-shadow-xs: 0 1px 1px rgb(0 0 0 / 0.05);
|
|
330
|
+
--kf-drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);
|
|
331
|
+
--kf-drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);
|
|
332
|
+
--kf-drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 0.15);
|
|
333
|
+
--kf-drop-shadow-xl: 0 9px 7px rgb(0 0 0 / 0.1);
|
|
334
|
+
--kf-drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / 0.15);
|
|
335
|
+
|
|
336
|
+
/* Text shadows */
|
|
337
|
+
--kf-text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / 0.15);
|
|
338
|
+
--kf-text-shadow-xs: 0px 1px 1px rgb(0 0 0 / 0.2);
|
|
339
|
+
--kf-text-shadow-sm: 0px 1px 0px rgb(0 0 0 / 0.075),
|
|
340
|
+
0px 1px 1px rgb(0 0 0 / 0.075), 0px 2px 2px rgb(0 0 0 / 0.075);
|
|
341
|
+
--kf-text-shadow-md: 0px 1px 1px rgb(0 0 0 / 0.1),
|
|
342
|
+
0px 1px 2px rgb(0 0 0 / 0.1), 0px 2px 4px rgb(0 0 0 / 0.1);
|
|
343
|
+
--kf-text-shadow-lg: 0px 1px 2px rgb(0 0 0 / 0.1),
|
|
344
|
+
0px 3px 2px rgb(0 0 0 / 0.1), 0px 4px 8px rgb(0 0 0 / 0.1);
|
|
345
|
+
|
|
346
|
+
/* Blur */
|
|
347
|
+
--kf-blur-xs: 4px;
|
|
348
|
+
--kf-blur-sm: 8px;
|
|
349
|
+
--kf-blur-md: 12px;
|
|
350
|
+
--kf-blur-lg: 16px;
|
|
351
|
+
--kf-blur-xl: 24px;
|
|
352
|
+
--kf-blur-2xl: 40px;
|
|
353
|
+
--kf-blur-3xl: 64px;
|
|
354
|
+
|
|
355
|
+
/* Perspective */
|
|
356
|
+
--kf-perspective-dramatic: 100px;
|
|
357
|
+
--kf-perspective-near: 300px;
|
|
358
|
+
--kf-perspective-normal: 500px;
|
|
359
|
+
--kf-perspective-midrange: 800px;
|
|
360
|
+
--kf-perspective-distant: 1200px;
|
|
361
|
+
|
|
362
|
+
/* Aspect ratio */
|
|
363
|
+
--kf-aspect-video: 16 / 9;
|
|
364
|
+
|
|
365
|
+
/* Easings */
|
|
366
|
+
--kf-ease-in: cubic-bezier(0.4, 0, 1, 1);
|
|
367
|
+
--kf-ease-out: cubic-bezier(0, 0, 0.2, 1);
|
|
368
|
+
--kf-ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
|
|
369
|
+
|
|
370
|
+
/* Animations */
|
|
371
|
+
--kf-animate-spin: spin 1s linear infinite;
|
|
372
|
+
--kf-animate-ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
|
|
373
|
+
--kf-animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
|
|
374
|
+
--kf-animate-bounce: bounce 1s infinite;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
@layer base {
|
|
378
|
+
* {
|
|
379
|
+
@apply border-border outline-ring/50;
|
|
380
|
+
}
|
|
381
|
+
body {
|
|
382
|
+
@apply bg-background text-foreground font-sans;
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
h1,
|
|
386
|
+
h2,
|
|
387
|
+
h3,
|
|
388
|
+
h4,
|
|
389
|
+
h5,
|
|
390
|
+
h6 {
|
|
391
|
+
@apply my-6 font-condensed font-medium;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
h1 {
|
|
395
|
+
@apply text-4xl;
|
|
396
|
+
}
|
|
397
|
+
h2 {
|
|
398
|
+
@apply text-3xl;
|
|
399
|
+
}
|
|
400
|
+
h3 {
|
|
401
|
+
@apply text-2xl;
|
|
402
|
+
}
|
|
403
|
+
h4 {
|
|
404
|
+
@apply text-xl;
|
|
405
|
+
}
|
|
406
|
+
h5 {
|
|
407
|
+
@apply text-lg;
|
|
408
|
+
}
|
|
409
|
+
h6 {
|
|
410
|
+
@apply text-base;
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
blockquote {
|
|
414
|
+
@apply font-serif;
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
blockquote cite {
|
|
418
|
+
@apply font-sans text-sm;
|
|
419
|
+
}
|
|
420
|
+
}
|