@womp/kookie-ui 0.3.26 → 0.5.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/AUTHORS +27 -0
- package/LICENSE +29 -0
- package/README.md +21 -1
- package/components.css +472 -270
- package/dist/cjs/components/_internal/shell-bottom.js +1 -1
- package/dist/cjs/components/_internal/shell-bottom.js.map +3 -3
- package/dist/cjs/components/_internal/shell-inspector.js +1 -1
- package/dist/cjs/components/_internal/shell-inspector.js.map +3 -3
- package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
- package/dist/cjs/components/_internal/shell-sidebar.js.map +3 -3
- package/dist/cjs/components/alert-dialog.js +1 -1
- package/dist/cjs/components/alert-dialog.js.map +3 -3
- package/dist/cjs/components/badge.js +1 -1
- package/dist/cjs/components/badge.js.map +3 -3
- package/dist/cjs/components/button.js +1 -1
- package/dist/cjs/components/button.js.map +3 -3
- package/dist/cjs/components/chatbar.js +2 -2
- package/dist/cjs/components/chatbar.js.map +3 -3
- package/dist/cjs/components/checkbox-cards.js +1 -1
- package/dist/cjs/components/checkbox-cards.js.map +3 -3
- package/dist/cjs/components/combobox.js +1 -1
- package/dist/cjs/components/combobox.js.map +3 -3
- package/dist/cjs/components/context-menu.js +1 -1
- package/dist/cjs/components/context-menu.js.map +3 -3
- package/dist/cjs/components/dialog.js +1 -1
- package/dist/cjs/components/dialog.js.map +3 -3
- package/dist/cjs/components/dropdown-menu.js +1 -1
- package/dist/cjs/components/dropdown-menu.js.map +3 -3
- package/dist/cjs/components/hover-card.js +1 -1
- package/dist/cjs/components/hover-card.js.map +3 -3
- package/dist/cjs/components/icon-button.js +2 -2
- package/dist/cjs/components/icon-button.js.map +3 -3
- package/dist/cjs/components/index.js +5 -5
- package/dist/cjs/components/index.js.map +3 -3
- package/dist/cjs/components/popover.js +1 -1
- package/dist/cjs/components/popover.js.map +3 -3
- package/dist/cjs/components/radio-cards.js +1 -1
- package/dist/cjs/components/radio-cards.js.map +3 -3
- package/dist/cjs/components/select.js +1 -1
- package/dist/cjs/components/select.js.map +3 -3
- package/dist/cjs/components/sheet.js +1 -1
- package/dist/cjs/components/sheet.js.map +3 -3
- package/dist/cjs/components/shell.js +1 -1
- package/dist/cjs/components/shell.js.map +3 -3
- package/dist/cjs/components/sidebar.js +1 -1
- package/dist/cjs/components/sidebar.js.map +3 -3
- package/dist/cjs/components/theme-panel.js +3 -3
- package/dist/cjs/components/theme-panel.js.map +3 -3
- package/dist/cjs/components/theme.d.ts +3 -0
- package/dist/cjs/components/theme.d.ts.map +1 -1
- package/dist/cjs/components/theme.js +1 -1
- package/dist/cjs/components/theme.js.map +3 -3
- package/dist/cjs/components/theme.props.d.ts +15 -1
- package/dist/cjs/components/theme.props.d.ts.map +1 -1
- package/dist/cjs/components/theme.props.js +1 -1
- package/dist/cjs/components/theme.props.js.map +2 -2
- package/dist/cjs/components/toggle-button.js +2 -2
- package/dist/cjs/components/toggle-button.js.map +3 -3
- package/dist/cjs/components/toggle-icon-button.js +3 -3
- package/dist/cjs/components/toggle-icon-button.js.map +3 -3
- package/dist/cjs/components/tooltip.js +1 -1
- package/dist/cjs/components/tooltip.js.map +3 -3
- package/dist/cjs/components/user-card.js +1 -1
- package/dist/cjs/components/user-card.js.map +3 -3
- package/dist/cjs/helpers/font-config.d.ts +84 -77
- package/dist/cjs/helpers/font-config.d.ts.map +1 -1
- package/dist/cjs/helpers/font-config.js +5 -2
- package/dist/cjs/helpers/font-config.js.map +3 -3
- package/dist/cjs/helpers/index.js +5 -2
- package/dist/cjs/helpers/index.js.map +3 -3
- package/dist/cjs/index.js +5 -5
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/props/index.js +1 -1
- package/dist/cjs/props/index.js.map +2 -2
- package/dist/esm/{chunk-4CKDU6FY.js → chunk-2FYJTSOP.js} +2 -2
- package/dist/esm/{chunk-ICIGZ3N7.js → chunk-374ZYJUP.js} +2 -2
- package/dist/esm/{chunk-F2HYQ3ZR.js → chunk-6IGTK4JE.js} +2 -2
- package/dist/esm/chunk-6XGZPIUT.js +2 -0
- package/dist/esm/{chunk-T27QHMW7.js.map → chunk-6XGZPIUT.js.map} +2 -2
- package/dist/esm/{chunk-FLFAXVFB.js → chunk-A2RZGGMY.js} +2 -2
- package/dist/esm/{chunk-KKM6T5P7.js → chunk-AU3D6F42.js} +2 -2
- package/dist/esm/{chunk-O3CDWEZA.js → chunk-CVWCKOHO.js} +2 -2
- package/dist/esm/{chunk-JQQIPEGY.js → chunk-CWRNW44F.js} +2 -2
- package/dist/esm/{chunk-UVCH7QKO.js → chunk-DNHUQLXO.js} +2 -2
- package/dist/esm/{chunk-FOEZLQTW.js → chunk-FXUUI6Z2.js} +2 -2
- package/dist/esm/{chunk-WO43WW3A.js → chunk-IKSN4RNB.js} +2 -2
- package/dist/esm/{chunk-4IY2PR6N.js → chunk-K6QZMNCD.js} +2 -2
- package/dist/esm/{chunk-DL2O3GKG.js → chunk-KKBP2CRH.js} +2 -2
- package/dist/esm/{chunk-VLO7NXSP.js → chunk-M24UXMOQ.js} +2 -2
- package/dist/esm/{chunk-MRECKC4D.js → chunk-MK2R6DAU.js} +2 -2
- package/dist/esm/{chunk-5IBGFL6O.js → chunk-MOR3NSXQ.js} +2 -2
- package/dist/esm/{chunk-PQZXQ4ST.js → chunk-OSRJRBKP.js} +2 -2
- package/dist/esm/{chunk-WTYNFBFV.js → chunk-PLWXTEVE.js} +2 -2
- package/dist/esm/{chunk-U2X2CAW4.js → chunk-QEOAXJLN.js} +2 -2
- package/dist/esm/{chunk-36ZQVP7F.js → chunk-RMKXWYOV.js} +2 -2
- package/dist/esm/{chunk-BJYUPIXO.js → chunk-S56YSRHP.js} +2 -2
- package/dist/esm/{chunk-22HGLMPQ.js → chunk-TOLLPRMM.js} +2 -2
- package/dist/esm/{chunk-ETMLMDW4.js → chunk-UGD7Z3L4.js} +2 -2
- package/dist/esm/chunk-VA5A4MHU.js +6 -0
- package/dist/esm/chunk-VA5A4MHU.js.map +7 -0
- package/dist/esm/{chunk-4BBOHEF4.js → chunk-W7N7V5YD.js} +2 -2
- package/dist/esm/{chunk-D5N627TH.js → chunk-WFMYNZXZ.js} +2 -2
- package/dist/esm/{chunk-JR2YOGII.js → chunk-YEB3H7QN.js} +2 -2
- package/dist/esm/chunk-YUP6EICB.js +2 -0
- package/dist/esm/chunk-YUP6EICB.js.map +7 -0
- package/dist/esm/components/_internal/shell-bottom.js +1 -1
- package/dist/esm/components/_internal/shell-inspector.js +1 -1
- package/dist/esm/components/_internal/shell-sidebar.js +1 -1
- package/dist/esm/components/alert-dialog.js +1 -1
- package/dist/esm/components/badge.js +1 -1
- package/dist/esm/components/button.js +1 -1
- package/dist/esm/components/chatbar.js +1 -1
- package/dist/esm/components/checkbox-cards.js +1 -1
- package/dist/esm/components/combobox.js +1 -1
- package/dist/esm/components/context-menu.js +1 -1
- package/dist/esm/components/dialog.js +1 -1
- package/dist/esm/components/dropdown-menu.js +1 -1
- package/dist/esm/components/hover-card.js +1 -1
- package/dist/esm/components/icon-button.js +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/popover.js +1 -1
- package/dist/esm/components/radio-cards.js +1 -1
- package/dist/esm/components/select.js +1 -1
- package/dist/esm/components/sheet.js +1 -1
- package/dist/esm/components/shell.js +1 -1
- package/dist/esm/components/sidebar.js +1 -1
- package/dist/esm/components/theme-panel.js +1 -1
- package/dist/esm/components/theme.d.ts +3 -0
- package/dist/esm/components/theme.d.ts.map +1 -1
- package/dist/esm/components/theme.js +1 -1
- package/dist/esm/components/theme.props.d.ts +15 -1
- package/dist/esm/components/theme.props.d.ts.map +1 -1
- package/dist/esm/components/theme.props.js +1 -1
- package/dist/esm/components/toggle-button.js +1 -1
- package/dist/esm/components/toggle-icon-button.js +1 -1
- package/dist/esm/components/tooltip.js +1 -1
- package/dist/esm/components/user-card.js +1 -1
- package/dist/esm/helpers/font-config.d.ts +84 -77
- package/dist/esm/helpers/font-config.d.ts.map +1 -1
- package/dist/esm/helpers/font-config.js +1 -1
- package/dist/esm/helpers/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/props/index.js +1 -1
- package/fonts.css +8 -0
- package/package.json +17 -7
- package/src/components/_internal/base-card.css +5 -5
- package/src/components/_internal/base-checkbox.css +17 -3
- package/src/components/_internal/base-dialog.css +4 -4
- package/src/components/_internal/base-menu.css +3 -3
- package/src/components/accordion.css +5 -5
- package/src/components/callout.css +5 -5
- package/src/components/chatbar.css +6 -6
- package/src/components/checkbox-cards.css +30 -0
- package/src/components/heading.css +10 -3
- package/src/components/hover-card.css +3 -3
- package/src/components/popover.css +4 -4
- package/src/components/radio-cards.css +30 -0
- package/src/components/select.css +2 -2
- package/src/components/shell.css +1 -1
- package/src/components/table.css +5 -5
- package/src/components/text.css +10 -3
- package/src/components/theme.props.tsx +13 -1
- package/src/components/theme.tsx +18 -0
- package/src/components/tooltip.css +1 -1
- package/src/helpers/font-config.ts +130 -148
- package/src/styles/fonts.css +24 -29
- package/src/styles/index.css +0 -1
- package/src/styles/tokens/base.css +1 -0
- package/src/styles/tokens/font-family.css +263 -0
- package/src/styles/tokens/radius.css +47 -4
- package/src/styles/tokens/typography.css +2 -216
- package/styles.css +9094 -8884
- package/tokens/base.css +55 -28
- package/tokens.css +55 -28
- package/dist/esm/chunk-LOGJJF4I.js +0 -2
- package/dist/esm/chunk-LOGJJF4I.js.map +0 -7
- package/dist/esm/chunk-Q7P6BTVU.js +0 -3
- package/dist/esm/chunk-Q7P6BTVU.js.map +0 -7
- package/dist/esm/chunk-T27QHMW7.js +0 -2
- /package/dist/esm/{chunk-4CKDU6FY.js.map → chunk-2FYJTSOP.js.map} +0 -0
- /package/dist/esm/{chunk-ICIGZ3N7.js.map → chunk-374ZYJUP.js.map} +0 -0
- /package/dist/esm/{chunk-F2HYQ3ZR.js.map → chunk-6IGTK4JE.js.map} +0 -0
- /package/dist/esm/{chunk-FLFAXVFB.js.map → chunk-A2RZGGMY.js.map} +0 -0
- /package/dist/esm/{chunk-KKM6T5P7.js.map → chunk-AU3D6F42.js.map} +0 -0
- /package/dist/esm/{chunk-O3CDWEZA.js.map → chunk-CVWCKOHO.js.map} +0 -0
- /package/dist/esm/{chunk-JQQIPEGY.js.map → chunk-CWRNW44F.js.map} +0 -0
- /package/dist/esm/{chunk-UVCH7QKO.js.map → chunk-DNHUQLXO.js.map} +0 -0
- /package/dist/esm/{chunk-FOEZLQTW.js.map → chunk-FXUUI6Z2.js.map} +0 -0
- /package/dist/esm/{chunk-WO43WW3A.js.map → chunk-IKSN4RNB.js.map} +0 -0
- /package/dist/esm/{chunk-4IY2PR6N.js.map → chunk-K6QZMNCD.js.map} +0 -0
- /package/dist/esm/{chunk-DL2O3GKG.js.map → chunk-KKBP2CRH.js.map} +0 -0
- /package/dist/esm/{chunk-VLO7NXSP.js.map → chunk-M24UXMOQ.js.map} +0 -0
- /package/dist/esm/{chunk-MRECKC4D.js.map → chunk-MK2R6DAU.js.map} +0 -0
- /package/dist/esm/{chunk-5IBGFL6O.js.map → chunk-MOR3NSXQ.js.map} +0 -0
- /package/dist/esm/{chunk-PQZXQ4ST.js.map → chunk-OSRJRBKP.js.map} +0 -0
- /package/dist/esm/{chunk-WTYNFBFV.js.map → chunk-PLWXTEVE.js.map} +0 -0
- /package/dist/esm/{chunk-U2X2CAW4.js.map → chunk-QEOAXJLN.js.map} +0 -0
- /package/dist/esm/{chunk-36ZQVP7F.js.map → chunk-RMKXWYOV.js.map} +0 -0
- /package/dist/esm/{chunk-BJYUPIXO.js.map → chunk-S56YSRHP.js.map} +0 -0
- /package/dist/esm/{chunk-22HGLMPQ.js.map → chunk-TOLLPRMM.js.map} +0 -0
- /package/dist/esm/{chunk-ETMLMDW4.js.map → chunk-UGD7Z3L4.js.map} +0 -0
- /package/dist/esm/{chunk-4BBOHEF4.js.map → chunk-W7N7V5YD.js.map} +0 -0
- /package/dist/esm/{chunk-D5N627TH.js.map → chunk-WFMYNZXZ.js.map} +0 -0
- /package/dist/esm/{chunk-JR2YOGII.js.map → chunk-YEB3H7QN.js.map} +0 -0
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
/***************************************************************************************************
|
|
2
|
+
* *
|
|
3
|
+
* TYPEFACES *
|
|
4
|
+
* *
|
|
5
|
+
* This file is the single owner of every font-family decision in Kookie UI. Sizes, weights, *
|
|
6
|
+
* line heights and letter spacing live in `typography.css`; nothing else declares a stack. *
|
|
7
|
+
* *
|
|
8
|
+
* There are exactly two tiers: *
|
|
9
|
+
* *
|
|
10
|
+
* 1. STACKS — which typefaces exist. Three of them: --font-sans, --font-mono, --font-serif. *
|
|
11
|
+
* Declared on `:root`, because a typeface is an app-wide resource (and because *
|
|
12
|
+
* that is where `next/font` and friends put theirs). Override at `:root`. *
|
|
13
|
+
* *
|
|
14
|
+
* 2. ROLES — which stack each piece of text uses: --font-body, --font-heading, --font-code, *
|
|
15
|
+
* --font-strong, --font-em, --font-quote. Declared on `.radix-themes`, because a *
|
|
16
|
+
* role is a per-theme decision that `<Theme fontFamily>` has to be able to switch *
|
|
17
|
+
* per subtree. Override at `.radix-themes`. *
|
|
18
|
+
* *
|
|
19
|
+
* No webfonts are loaded here. The defaults below are system stacks. To use Kookie's own *
|
|
20
|
+
* typefaces (Inter / JetBrains Mono / Playfair Display), additionally import *
|
|
21
|
+
* '@womp/kookie-ui/fonts.css'. *
|
|
22
|
+
* *
|
|
23
|
+
***************************************************************************************************/
|
|
24
|
+
|
|
25
|
+
:root {
|
|
26
|
+
/* Tier 1: stacks. Override these to change every typeface in the system. */
|
|
27
|
+
--font-sans:
|
|
28
|
+
-apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, 'Helvetica Neue', 'Open Sans (Custom)', system-ui, sans-serif, 'Apple Color Emoji',
|
|
29
|
+
'Segoe UI Emoji';
|
|
30
|
+
--font-mono: 'Menlo', 'Consolas (Custom)', 'Bitstream Vera Sans Mono', monospace, 'Apple Color Emoji', 'Segoe UI Emoji';
|
|
31
|
+
--font-serif: 'Times New Roman', 'Times', 'Georgia', 'Cambria', serif;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.radix-themes {
|
|
35
|
+
/* Tier 2: roles. Each one points at a stack. Override these to give a role its own typeface —
|
|
36
|
+
e.g. `--font-heading: var(--font-serif)` for serif headings over a sans body. */
|
|
37
|
+
--font-body: var(--font-sans);
|
|
38
|
+
--font-heading: var(--font-body); /* follows the body unless you say otherwise */
|
|
39
|
+
--font-code: var(--font-mono);
|
|
40
|
+
--font-strong: var(--font-body);
|
|
41
|
+
--font-em: var(--font-serif);
|
|
42
|
+
--font-quote: var(--font-serif);
|
|
43
|
+
|
|
44
|
+
/* Radix Themes names, kept as aliases of the roles above. Components read these, so overriding
|
|
45
|
+
either the Kookie role or the Radix name works — they are the same token, spelled twice. */
|
|
46
|
+
--default-font-family: var(--font-body);
|
|
47
|
+
--heading-font-family: var(--font-heading);
|
|
48
|
+
--code-font-family: var(--font-code);
|
|
49
|
+
--strong-font-family: var(--font-strong);
|
|
50
|
+
--em-font-family: var(--font-em);
|
|
51
|
+
--quote-font-family: var(--font-quote);
|
|
52
|
+
|
|
53
|
+
/* @deprecated Use --font-sans / --font-mono / --font-serif directly. */
|
|
54
|
+
--default-font-family-sans: var(--font-sans);
|
|
55
|
+
--default-font-family-mono: var(--font-mono);
|
|
56
|
+
--default-font-family-serif: var(--font-serif);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/* `<Theme fontFamily>` — sets the body role only. Heading follows it through --font-heading's
|
|
60
|
+
default, so a `--font-heading` override of yours survives a theme font switch. */
|
|
61
|
+
[data-font-family='sans'] {
|
|
62
|
+
--font-body: var(--font-sans);
|
|
63
|
+
}
|
|
64
|
+
[data-font-family='mono'] {
|
|
65
|
+
--font-body: var(--font-mono);
|
|
66
|
+
}
|
|
67
|
+
[data-font-family='serif'] {
|
|
68
|
+
--font-body: var(--font-serif);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/* `<Theme headingFontFamily>` — sets the heading role independently of the body. */
|
|
72
|
+
[data-heading-font-family='sans'] {
|
|
73
|
+
--font-heading: var(--font-sans);
|
|
74
|
+
}
|
|
75
|
+
[data-heading-font-family='mono'] {
|
|
76
|
+
--font-heading: var(--font-mono);
|
|
77
|
+
}
|
|
78
|
+
[data-heading-font-family='serif'] {
|
|
79
|
+
--font-heading: var(--font-serif);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/***************************************************************************************************
|
|
83
|
+
* *
|
|
84
|
+
* METRIC OVERRIDES *
|
|
85
|
+
* *
|
|
86
|
+
* Fallback faces normalised to match the primary stack's metrics, so swapping a webfont for a *
|
|
87
|
+
* system face does not reflow the page. Referenced by the default stacks above. *
|
|
88
|
+
* *
|
|
89
|
+
***************************************************************************************************/
|
|
90
|
+
|
|
91
|
+
@font-face {
|
|
92
|
+
font-family: 'Segoe UI (Custom)';
|
|
93
|
+
font-weight: 300;
|
|
94
|
+
size-adjust: 103%;
|
|
95
|
+
descent-override: 35%;
|
|
96
|
+
ascent-override: 105%;
|
|
97
|
+
src: local('Segoe UI Semilight'), local('Segoe UI');
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
@font-face {
|
|
101
|
+
font-family: 'Segoe UI (Custom)';
|
|
102
|
+
font-weight: 300;
|
|
103
|
+
font-style: italic;
|
|
104
|
+
size-adjust: 103%;
|
|
105
|
+
descent-override: 35%;
|
|
106
|
+
ascent-override: 105%;
|
|
107
|
+
src: local('Segoe UI Semilight Italic'), local('Segoe UI Italic');
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
@font-face {
|
|
111
|
+
font-family: 'Segoe UI (Custom)';
|
|
112
|
+
font-weight: 400;
|
|
113
|
+
size-adjust: 103%;
|
|
114
|
+
descent-override: 35%;
|
|
115
|
+
ascent-override: 105%;
|
|
116
|
+
src: local('Segoe UI');
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
@font-face {
|
|
120
|
+
font-family: 'Segoe UI (Custom)';
|
|
121
|
+
font-weight: 400;
|
|
122
|
+
font-style: italic;
|
|
123
|
+
size-adjust: 103%;
|
|
124
|
+
descent-override: 35%;
|
|
125
|
+
ascent-override: 105%;
|
|
126
|
+
src: local('Segoe UI Italic');
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
@font-face {
|
|
130
|
+
font-family: 'Segoe UI (Custom)';
|
|
131
|
+
font-weight: 500;
|
|
132
|
+
size-adjust: 103%;
|
|
133
|
+
descent-override: 35%;
|
|
134
|
+
ascent-override: 105%;
|
|
135
|
+
src: local('Segoe UI Semibold'), local('Segoe UI');
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
@font-face {
|
|
139
|
+
font-family: 'Segoe UI (Custom)';
|
|
140
|
+
font-weight: 500;
|
|
141
|
+
font-style: italic;
|
|
142
|
+
size-adjust: 103%;
|
|
143
|
+
descent-override: 35%;
|
|
144
|
+
ascent-override: 105%;
|
|
145
|
+
src: local('Segoe UI Semibold Italic'), local('Segoe UI Italic');
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
@font-face {
|
|
149
|
+
font-family: 'Segoe UI (Custom)';
|
|
150
|
+
font-weight: 700;
|
|
151
|
+
size-adjust: 103%;
|
|
152
|
+
descent-override: 35%;
|
|
153
|
+
ascent-override: 105%;
|
|
154
|
+
src: local('Segoe UI Bold');
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
@font-face {
|
|
158
|
+
font-family: 'Segoe UI (Custom)';
|
|
159
|
+
font-weight: 700;
|
|
160
|
+
font-style: italic;
|
|
161
|
+
size-adjust: 103%;
|
|
162
|
+
descent-override: 35%;
|
|
163
|
+
ascent-override: 105%;
|
|
164
|
+
src: local('Segoe UI Bold Italic');
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
@font-face {
|
|
168
|
+
font-family: 'Open Sans (Custom)';
|
|
169
|
+
font-weight: 300;
|
|
170
|
+
descent-override: 35%;
|
|
171
|
+
src: local('Open Sans Light'), local('Open Sans Regular');
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
@font-face {
|
|
175
|
+
font-family: 'Open Sans (Custom)';
|
|
176
|
+
font-weight: 300;
|
|
177
|
+
font-style: italic;
|
|
178
|
+
descent-override: 35%;
|
|
179
|
+
src: local('Open Sans Light Italic'), local('Open Sans Italic');
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
@font-face {
|
|
183
|
+
font-family: 'Open Sans (Custom)';
|
|
184
|
+
font-weight: 400;
|
|
185
|
+
descent-override: 35%;
|
|
186
|
+
src: local('Open Sans Regular');
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
@font-face {
|
|
190
|
+
font-family: 'Open Sans (Custom)';
|
|
191
|
+
font-weight: 400;
|
|
192
|
+
font-style: italic;
|
|
193
|
+
descent-override: 35%;
|
|
194
|
+
src: local('Open Sans Italic');
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
@font-face {
|
|
198
|
+
font-family: 'Open Sans (Custom)';
|
|
199
|
+
font-weight: 500;
|
|
200
|
+
descent-override: 35%;
|
|
201
|
+
src: local('Open Sans Medium'), local('Open Sans Regular');
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
@font-face {
|
|
205
|
+
font-family: 'Open Sans (Custom)';
|
|
206
|
+
font-weight: 500;
|
|
207
|
+
font-style: italic;
|
|
208
|
+
descent-override: 35%;
|
|
209
|
+
src: local('Open Sans Medium Italic'), local('Open Sans Italic');
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
@font-face {
|
|
213
|
+
font-family: 'Open Sans (Custom)';
|
|
214
|
+
font-weight: 700;
|
|
215
|
+
descent-override: 35%;
|
|
216
|
+
src: local('Open Sans Bold');
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
@font-face {
|
|
220
|
+
font-family: 'Open Sans (Custom)';
|
|
221
|
+
font-weight: 700;
|
|
222
|
+
font-style: italic;
|
|
223
|
+
descent-override: 35%;
|
|
224
|
+
src: local('Open Sans Bold Italic');
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
@font-face {
|
|
228
|
+
font-family: 'Consolas (Custom)';
|
|
229
|
+
font-weight: 400;
|
|
230
|
+
size-adjust: 110%;
|
|
231
|
+
ascent-override: 85%;
|
|
232
|
+
descent-override: 22%;
|
|
233
|
+
src: local('Consolas');
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
@font-face {
|
|
237
|
+
font-family: 'Consolas (Custom)';
|
|
238
|
+
font-weight: 400;
|
|
239
|
+
font-style: italic;
|
|
240
|
+
size-adjust: 110%;
|
|
241
|
+
ascent-override: 85%;
|
|
242
|
+
descent-override: 22%;
|
|
243
|
+
src: local('Consolas Italic');
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
@font-face {
|
|
247
|
+
font-family: 'Consolas (Custom)';
|
|
248
|
+
font-weight: 700;
|
|
249
|
+
size-adjust: 110%;
|
|
250
|
+
ascent-override: 85%;
|
|
251
|
+
descent-override: 22%;
|
|
252
|
+
src: local('Consolas Bold');
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
@font-face {
|
|
256
|
+
font-family: 'Consolas (Custom)';
|
|
257
|
+
font-weight: 700;
|
|
258
|
+
font-style: italic;
|
|
259
|
+
size-adjust: 110%;
|
|
260
|
+
ascent-override: 85%;
|
|
261
|
+
descent-override: 22%;
|
|
262
|
+
src: local('Consolas Bold Italic');
|
|
263
|
+
}
|
|
@@ -1,45 +1,88 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* RADIUS
|
|
3
|
+
*
|
|
4
|
+
* Two channels, one theme.
|
|
5
|
+
*
|
|
6
|
+
* `--radius-*` CONTROLS & MARKS — buttons, inputs, checkboxes, badges,
|
|
7
|
+
* switches, tabs. These scale aggressively with the theme
|
|
8
|
+
* and opt into `--radius-full` to become pills.
|
|
9
|
+
*
|
|
10
|
+
* `--radius-surface-*` SURFACES — cards, dialogs, popovers, menus, tables,
|
|
11
|
+
* callouts. These damp as the theme grows and never go
|
|
12
|
+
* pill. A surface at `full` is exactly as round as a
|
|
13
|
+
* surface at `medium`; `--radius-surface-factor` is
|
|
14
|
+
* capped at 1.
|
|
15
|
+
*
|
|
16
|
+
* The gap between the two channels is the point: round controls read as
|
|
17
|
+
* touchable, restrained surfaces read as architectural. Widening the theme
|
|
18
|
+
* widens that contrast instead of inflating everything at once.
|
|
19
|
+
*/
|
|
20
|
+
|
|
1
21
|
[data-radius] {
|
|
2
|
-
/*
|
|
22
|
+
/* Controls & marks */
|
|
3
23
|
--radius-1: calc(6px * var(--scaling) * var(--radius-factor));
|
|
4
24
|
--radius-2: calc(8px * var(--scaling) * var(--radius-factor));
|
|
5
25
|
--radius-3: calc(10px * var(--scaling) * var(--radius-factor));
|
|
6
26
|
--radius-4: calc(12px * var(--scaling) * var(--radius-factor));
|
|
7
|
-
|
|
27
|
+
|
|
8
28
|
/* */
|
|
9
29
|
--radius-5: calc(16px * var(--scaling) * var(--radius-factor));
|
|
10
30
|
--radius-6: calc(20px * var(--scaling) * var(--radius-factor));
|
|
11
31
|
--radius-7: calc(24px * var(--scaling) * var(--radius-factor));
|
|
12
32
|
--radius-8: calc(28px * var(--scaling) * var(--radius-factor));
|
|
13
|
-
|
|
33
|
+
|
|
14
34
|
/* */
|
|
15
35
|
--radius-9: calc(32px * var(--scaling) * var(--radius-factor));
|
|
16
36
|
--radius-10: calc(40px * var(--scaling) * var(--radius-factor));
|
|
17
37
|
--radius-11: calc(48px * var(--scaling) * var(--radius-factor));
|
|
18
38
|
--radius-12: calc(56px * var(--scaling) * var(--radius-factor));
|
|
39
|
+
|
|
40
|
+
/* Surfaces — same ramp, damped factor, no pill */
|
|
41
|
+
--radius-surface-1: calc(6px * var(--scaling) * var(--radius-surface-factor));
|
|
42
|
+
--radius-surface-2: calc(8px * var(--scaling) * var(--radius-surface-factor));
|
|
43
|
+
--radius-surface-3: calc(10px * var(--scaling) * var(--radius-surface-factor));
|
|
44
|
+
--radius-surface-4: calc(12px * var(--scaling) * var(--radius-surface-factor));
|
|
45
|
+
|
|
46
|
+
/* */
|
|
47
|
+
--radius-surface-5: calc(16px * var(--scaling) * var(--radius-surface-factor));
|
|
48
|
+
--radius-surface-6: calc(20px * var(--scaling) * var(--radius-surface-factor));
|
|
49
|
+
--radius-surface-7: calc(24px * var(--scaling) * var(--radius-surface-factor));
|
|
50
|
+
--radius-surface-8: calc(28px * var(--scaling) * var(--radius-surface-factor));
|
|
51
|
+
|
|
52
|
+
/* */
|
|
53
|
+
--radius-surface-9: calc(32px * var(--scaling) * var(--radius-surface-factor));
|
|
54
|
+
--radius-surface-10: calc(40px * var(--scaling) * var(--radius-surface-factor));
|
|
55
|
+
--radius-surface-11: calc(48px * var(--scaling) * var(--radius-surface-factor));
|
|
56
|
+
--radius-surface-12: calc(56px * var(--scaling) * var(--radius-surface-factor));
|
|
19
57
|
}
|
|
20
58
|
|
|
21
59
|
|
|
22
60
|
[data-radius='none'] {
|
|
23
61
|
--radius-factor: 0;
|
|
62
|
+
--radius-surface-factor: 0;
|
|
24
63
|
--radius-full: 0px;
|
|
25
64
|
}
|
|
26
65
|
|
|
27
66
|
[data-radius='small'] {
|
|
28
67
|
--radius-factor: 0.75;
|
|
68
|
+
--radius-surface-factor: 0.5;
|
|
29
69
|
--radius-full: 0px;
|
|
30
70
|
}
|
|
31
71
|
|
|
32
72
|
[data-radius='medium'] {
|
|
33
73
|
--radius-factor: 1;
|
|
74
|
+
--radius-surface-factor: 0.75;
|
|
34
75
|
--radius-full: 0px;
|
|
35
76
|
}
|
|
36
77
|
|
|
37
78
|
[data-radius='large'] {
|
|
38
79
|
--radius-factor: 1.5;
|
|
80
|
+
--radius-surface-factor: 0.9;
|
|
39
81
|
--radius-full: 0px;
|
|
40
82
|
}
|
|
41
83
|
|
|
42
84
|
[data-radius='full'] {
|
|
43
|
-
--radius-factor: 2
|
|
85
|
+
--radius-factor: 2;
|
|
86
|
+
--radius-surface-factor: 1;
|
|
44
87
|
--radius-full: 9999px;
|
|
45
88
|
}
|
|
@@ -50,18 +50,8 @@
|
|
|
50
50
|
--letter-spacing-11: -0.035em;
|
|
51
51
|
--letter-spacing-12: -0.04em;
|
|
52
52
|
|
|
53
|
-
/* default values */
|
|
53
|
+
/* default values (typefaces live in font-family.css) */
|
|
54
54
|
|
|
55
|
-
--default-font-family:
|
|
56
|
-
var(--font-sans, var(--font-inter, 'Inter')), -apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, 'Helvetica Neue', 'Open Sans (Custom)', system-ui, sans-serif, 'Apple Color Emoji',
|
|
57
|
-
'Segoe UI Emoji';
|
|
58
|
-
|
|
59
|
-
/* Font family overrides based on theme data attribute */
|
|
60
|
-
--default-font-family-sans:
|
|
61
|
-
var(--font-sans, var(--font-inter, 'Inter')), -apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, 'Helvetica Neue', 'Open Sans (Custom)', system-ui, sans-serif, 'Apple Color Emoji',
|
|
62
|
-
'Segoe UI Emoji';
|
|
63
|
-
--default-font-family-mono: var(--font-mono);
|
|
64
|
-
--default-font-family-serif: var(--font-serif);
|
|
65
55
|
--default-font-size: var(--font-size-3); /* Same size used for `<Text size="3">` */
|
|
66
56
|
--default-font-style: normal;
|
|
67
57
|
--default-font-weight: var(--font-weight-regular);
|
|
@@ -72,7 +62,6 @@
|
|
|
72
62
|
|
|
73
63
|
/* Heading */
|
|
74
64
|
|
|
75
|
-
--heading-font-family: var(--default-font-family);
|
|
76
65
|
--heading-font-size-adjust: 1;
|
|
77
66
|
--heading-font-style: normal;
|
|
78
67
|
--heading-leading-trim-start: var(--default-leading-trim-start);
|
|
@@ -95,7 +84,6 @@
|
|
|
95
84
|
|
|
96
85
|
/* Code */
|
|
97
86
|
|
|
98
|
-
--code-font-family: var(--font-mono, var(--font-jetbrains-mono, 'JetBrains Mono')), 'Menlo', 'Consolas (Custom)', 'Bitstream Vera Sans Mono', monospace, 'Apple Color Emoji', 'Segoe UI Emoji';
|
|
99
87
|
--code-font-size-adjust: 0.95;
|
|
100
88
|
--code-font-style: normal;
|
|
101
89
|
--code-font-weight: inherit;
|
|
@@ -107,7 +95,6 @@
|
|
|
107
95
|
|
|
108
96
|
/* Strong */
|
|
109
97
|
|
|
110
|
-
--strong-font-family: var(--default-font-family);
|
|
111
98
|
--strong-font-size-adjust: 1;
|
|
112
99
|
--strong-font-style: inherit;
|
|
113
100
|
--strong-font-weight: var(--font-weight-medium);
|
|
@@ -115,7 +102,6 @@
|
|
|
115
102
|
|
|
116
103
|
/* Em */
|
|
117
104
|
|
|
118
|
-
--em-font-family: 'Times New Roman', 'Times', serif;
|
|
119
105
|
--em-font-size-adjust: 1.18;
|
|
120
106
|
--em-font-style: italic;
|
|
121
107
|
--em-font-weight: inherit;
|
|
@@ -123,7 +109,6 @@
|
|
|
123
109
|
|
|
124
110
|
/* Quote */
|
|
125
111
|
|
|
126
|
-
--quote-font-family: 'Times New Roman', 'Times', serif;
|
|
127
112
|
--quote-font-size-adjust: 1.18;
|
|
128
113
|
--quote-font-style: italic;
|
|
129
114
|
--quote-font-weight: inherit;
|
|
@@ -140,6 +125,7 @@
|
|
|
140
125
|
.radix-themes {
|
|
141
126
|
overflow-wrap: break-word;
|
|
142
127
|
font-family: var(--default-font-family);
|
|
128
|
+
font-synthesis: none;
|
|
143
129
|
font-size: var(--default-font-size);
|
|
144
130
|
font-weight: var(--default-font-weight);
|
|
145
131
|
font-style: var(--default-font-style);
|
|
@@ -149,203 +135,3 @@
|
|
|
149
135
|
-webkit-font-smoothing: antialiased;
|
|
150
136
|
-moz-osx-font-smoothing: grayscale;
|
|
151
137
|
}
|
|
152
|
-
|
|
153
|
-
@font-face {
|
|
154
|
-
font-family: 'Segoe UI (Custom)';
|
|
155
|
-
font-weight: 300;
|
|
156
|
-
size-adjust: 103%;
|
|
157
|
-
descent-override: 35%;
|
|
158
|
-
ascent-override: 105%;
|
|
159
|
-
src: local('Segoe UI Semilight'), local('Segoe UI');
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
@font-face {
|
|
163
|
-
font-family: 'Segoe UI (Custom)';
|
|
164
|
-
font-weight: 300;
|
|
165
|
-
font-style: italic;
|
|
166
|
-
size-adjust: 103%;
|
|
167
|
-
descent-override: 35%;
|
|
168
|
-
ascent-override: 105%;
|
|
169
|
-
src: local('Segoe UI Semilight Italic'), local('Segoe UI Italic');
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
@font-face {
|
|
173
|
-
font-family: 'Segoe UI (Custom)';
|
|
174
|
-
font-weight: 400;
|
|
175
|
-
size-adjust: 103%;
|
|
176
|
-
descent-override: 35%;
|
|
177
|
-
ascent-override: 105%;
|
|
178
|
-
src: local('Segoe UI');
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
@font-face {
|
|
182
|
-
font-family: 'Segoe UI (Custom)';
|
|
183
|
-
font-weight: 400;
|
|
184
|
-
font-style: italic;
|
|
185
|
-
size-adjust: 103%;
|
|
186
|
-
descent-override: 35%;
|
|
187
|
-
ascent-override: 105%;
|
|
188
|
-
src: local('Segoe UI Italic');
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
@font-face {
|
|
192
|
-
font-family: 'Segoe UI (Custom)';
|
|
193
|
-
font-weight: 500;
|
|
194
|
-
size-adjust: 103%;
|
|
195
|
-
descent-override: 35%;
|
|
196
|
-
ascent-override: 105%;
|
|
197
|
-
src: local('Segoe UI Semibold'), local('Segoe UI');
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
@font-face {
|
|
201
|
-
font-family: 'Segoe UI (Custom)';
|
|
202
|
-
font-weight: 500;
|
|
203
|
-
font-style: italic;
|
|
204
|
-
size-adjust: 103%;
|
|
205
|
-
descent-override: 35%;
|
|
206
|
-
ascent-override: 105%;
|
|
207
|
-
src: local('Segoe UI Semibold Italic'), local('Segoe UI Italic');
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
@font-face {
|
|
211
|
-
font-family: 'Segoe UI (Custom)';
|
|
212
|
-
font-weight: 700;
|
|
213
|
-
size-adjust: 103%;
|
|
214
|
-
descent-override: 35%;
|
|
215
|
-
ascent-override: 105%;
|
|
216
|
-
src: local('Segoe UI Bold');
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
@font-face {
|
|
220
|
-
font-family: 'Segoe UI (Custom)';
|
|
221
|
-
font-weight: 700;
|
|
222
|
-
font-style: italic;
|
|
223
|
-
size-adjust: 103%;
|
|
224
|
-
descent-override: 35%;
|
|
225
|
-
ascent-override: 105%;
|
|
226
|
-
src: local('Segoe UI Bold Italic');
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
@font-face {
|
|
230
|
-
font-family: 'Open Sans (Custom)';
|
|
231
|
-
font-weight: 300;
|
|
232
|
-
descent-override: 35%;
|
|
233
|
-
src: local('Open Sans Light'), local('Open Sans Regular');
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
@font-face {
|
|
237
|
-
font-family: 'Open Sans (Custom)';
|
|
238
|
-
font-weight: 300;
|
|
239
|
-
font-style: italic;
|
|
240
|
-
descent-override: 35%;
|
|
241
|
-
src: local('Open Sans Light Italic'), local('Open Sans Italic');
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
@font-face {
|
|
245
|
-
font-family: 'Open Sans (Custom)';
|
|
246
|
-
font-weight: 400;
|
|
247
|
-
descent-override: 35%;
|
|
248
|
-
src: local('Open Sans Regular');
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
@font-face {
|
|
252
|
-
font-family: 'Open Sans (Custom)';
|
|
253
|
-
font-weight: 400;
|
|
254
|
-
font-style: italic;
|
|
255
|
-
descent-override: 35%;
|
|
256
|
-
src: local('Open Sans Italic');
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
@font-face {
|
|
260
|
-
font-family: 'Open Sans (Custom)';
|
|
261
|
-
font-weight: 500;
|
|
262
|
-
descent-override: 35%;
|
|
263
|
-
src: local('Open Sans Medium'), local('Open Sans Regular');
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
@font-face {
|
|
267
|
-
font-family: 'Open Sans (Custom)';
|
|
268
|
-
font-weight: 500;
|
|
269
|
-
font-style: italic;
|
|
270
|
-
descent-override: 35%;
|
|
271
|
-
src: local('Open Sans Medium Italic'), local('Open Sans Italic');
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
@font-face {
|
|
275
|
-
font-family: 'Open Sans (Custom)';
|
|
276
|
-
font-weight: 700;
|
|
277
|
-
descent-override: 35%;
|
|
278
|
-
src: local('Open Sans Bold');
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
@font-face {
|
|
282
|
-
font-family: 'Open Sans (Custom)';
|
|
283
|
-
font-weight: 700;
|
|
284
|
-
font-style: italic;
|
|
285
|
-
descent-override: 35%;
|
|
286
|
-
src: local('Open Sans Bold Italic');
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
@font-face {
|
|
290
|
-
font-family: 'Consolas (Custom)';
|
|
291
|
-
font-weight: 400;
|
|
292
|
-
size-adjust: 110%;
|
|
293
|
-
ascent-override: 85%;
|
|
294
|
-
descent-override: 22%;
|
|
295
|
-
src: local('Consolas');
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
@font-face {
|
|
299
|
-
font-family: 'Consolas (Custom)';
|
|
300
|
-
font-weight: 400;
|
|
301
|
-
font-style: italic;
|
|
302
|
-
size-adjust: 110%;
|
|
303
|
-
ascent-override: 85%;
|
|
304
|
-
descent-override: 22%;
|
|
305
|
-
src: local('Consolas Italic');
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
@font-face {
|
|
309
|
-
font-family: 'Consolas (Custom)';
|
|
310
|
-
font-weight: 700;
|
|
311
|
-
size-adjust: 110%;
|
|
312
|
-
ascent-override: 85%;
|
|
313
|
-
descent-override: 22%;
|
|
314
|
-
src: local('Consolas Bold');
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
@font-face {
|
|
318
|
-
font-family: 'Consolas (Custom)';
|
|
319
|
-
font-weight: 700;
|
|
320
|
-
font-style: italic;
|
|
321
|
-
size-adjust: 110%;
|
|
322
|
-
ascent-override: 85%;
|
|
323
|
-
descent-override: 22%;
|
|
324
|
-
src: local('Consolas Bold Italic');
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
/* Font family data attribute support */
|
|
328
|
-
[data-font-family='sans'] {
|
|
329
|
-
--default-font-family: var(--default-font-family-sans);
|
|
330
|
-
--heading-font-family: var(--default-font-family-sans);
|
|
331
|
-
--strong-font-family: var(--default-font-family-sans);
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
[data-font-family='mono'] {
|
|
335
|
-
--default-font-family: var(--default-font-family-mono);
|
|
336
|
-
--heading-font-family: var(--default-font-family-mono);
|
|
337
|
-
--strong-font-family: var(--default-font-family-mono);
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
[data-font-family='serif'] {
|
|
341
|
-
/* Map serif directly to --font-serif to avoid resolution issues */
|
|
342
|
-
--default-font-family: var(--font-serif);
|
|
343
|
-
--heading-font-family: var(--font-serif);
|
|
344
|
-
--strong-font-family: var(--font-serif);
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
/* Ensure serif font takes precedence over .radix-themes */
|
|
348
|
-
/* stylelint-disable-next-line selector-max-specificity */
|
|
349
|
-
.radix-themes[data-font-family='serif'] {
|
|
350
|
-
font-family: var(--font-serif) !important;
|
|
351
|
-
}
|