@ac-design/design-system 1.0.3 → 2.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/README.md +27 -18
- package/dist/lib/charts/ChartFrame.js +5 -0
- package/dist/lib/charts/ChartFrame.vue.d.ts +69 -0
- package/dist/lib/charts/ChartFrame.vue_vue_type_script_setup_true_lang.js +168 -0
- package/dist/lib/charts/index.d.ts +7 -0
- package/dist/lib/charts/index.js +5 -0
- package/dist/lib/charts/shared.d.ts +60 -0
- package/dist/lib/charts/shared.js +114 -0
- package/dist/lib/charts/xy.d.ts +65 -0
- package/dist/lib/charts/xy.js +92 -0
- package/dist/lib/compat.css +1707 -1042
- package/dist/lib/components/AcAccordion.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/lib/components/AcAccordionItem.vue.d.ts +1 -1
- package/dist/lib/components/AcAccordionItem.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/lib/components/AcAlert.vue.d.ts +1 -1
- package/dist/lib/components/AcAlert.vue_vue_type_script_setup_true_lang.js +19 -25
- package/dist/lib/components/AcAppSwitcher.vue_vue_type_script_setup_true_lang.js +19 -19
- package/dist/lib/components/AcAreaChart.js +5 -0
- package/dist/lib/components/AcAreaChart.vue.d.ts +44 -0
- package/dist/lib/components/AcAreaChart.vue_vue_type_script_setup_true_lang.js +215 -0
- package/dist/lib/components/AcAvatar.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/lib/components/AcBadge.vue.d.ts +16 -7
- package/dist/lib/components/AcBadge.vue_vue_type_script_setup_true_lang.js +59 -43
- package/dist/lib/components/AcBanner.vue.d.ts +1 -1
- package/dist/lib/components/AcBanner.vue_vue_type_script_setup_true_lang.js +30 -30
- package/dist/lib/components/AcBarChart.js +5 -0
- package/dist/lib/components/AcBarChart.vue.d.ts +43 -0
- package/dist/lib/components/AcBarChart.vue_vue_type_script_setup_true_lang.js +217 -0
- package/dist/lib/components/AcBreadcrumb.vue_vue_type_script_setup_true_lang.js +27 -26
- package/dist/lib/components/AcBulkActionBar.js +5 -0
- package/dist/lib/components/AcBulkActionBar.vue.d.ts +43 -0
- package/dist/lib/components/AcBulkActionBar.vue_vue_type_script_setup_true_lang.js +84 -0
- package/dist/lib/components/AcButton.vue.d.ts +3 -3
- package/dist/lib/components/AcButton.vue_vue_type_script_setup_true_lang.js +42 -34
- package/dist/lib/components/AcButtons.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/lib/components/AcCard.vue.d.ts +10 -2
- package/dist/lib/components/AcCard.vue_vue_type_script_setup_true_lang.js +37 -11
- package/dist/lib/components/AcCellValue.vue.d.ts +4 -1
- package/dist/lib/components/AcCellValue.vue_vue_type_script_setup_true_lang.js +214 -179
- package/dist/lib/components/AcCheckBox.vue.d.ts +17 -3
- package/dist/lib/components/AcCheckBox.vue_vue_type_script_setup_true_lang.js +126 -29
- package/dist/lib/components/AcCheckRadio.vue.d.ts +1 -1
- package/dist/lib/components/AcCheckRadio.vue_vue_type_script_setup_true_lang.js +33 -21
- package/dist/lib/components/AcCircularProgress.js +5 -0
- package/dist/lib/components/AcCircularProgress.vue.d.ts +44 -0
- package/dist/lib/components/AcCircularProgress.vue_vue_type_script_setup_true_lang.js +111 -0
- package/dist/lib/components/AcClusterSwitcher.vue_vue_type_script_setup_true_lang.js +142 -167
- package/dist/lib/components/AcCodeEditor.vue_vue_type_script_setup_true_lang.js +9 -9
- package/dist/lib/components/AcColorInput.js +5 -0
- package/dist/lib/components/AcColorInput.vue.d.ts +54 -0
- package/dist/lib/components/AcColorInput.vue_vue_type_script_setup_true_lang.js +187 -0
- package/dist/lib/components/AcConfirmModal.js +5 -0
- package/dist/lib/components/AcConfirmModal.vue.d.ts +56 -0
- package/dist/lib/components/AcConfirmModal.vue_vue_type_script_setup_true_lang.js +92 -0
- package/dist/lib/components/AcContentHeader.vue.d.ts +1 -1
- package/dist/lib/components/AcContentHeader.vue_vue_type_script_setup_true_lang.js +5 -4
- package/dist/lib/components/AcContentLayout.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/lib/components/AcCopyButton.js +5 -0
- package/dist/lib/components/AcCopyButton.vue.d.ts +43 -0
- package/dist/lib/components/AcCopyButton.vue_vue_type_script_setup_true_lang.js +92 -0
- package/dist/lib/components/AcDatePicker.vue.d.ts +5 -5
- package/dist/lib/components/AcDatePicker.vue_vue_type_script_setup_true_lang.js +204 -213
- package/dist/lib/components/AcDeleteModal.vue.d.ts +4 -4
- package/dist/lib/components/AcDeleteModal.vue_vue_type_script_setup_true_lang.js +37 -46
- package/dist/lib/components/AcDonutChart.js +5 -0
- package/dist/lib/components/AcDonutChart.vue.d.ts +73 -0
- package/dist/lib/components/AcDonutChart.vue_vue_type_script_setup_true_lang.js +210 -0
- package/dist/lib/components/AcDropdown.vue.d.ts +1 -1
- package/dist/lib/components/AcDropdown.vue_vue_type_script_setup_true_lang.js +9 -9
- package/dist/lib/components/AcDropdownDivider.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/lib/components/AcDropdownItem.vue.d.ts +1 -1
- package/dist/lib/components/AcDropdownItem.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/lib/components/AcEmptyState.vue.d.ts +4 -1
- package/dist/lib/components/AcEmptyState.vue_vue_type_script_setup_true_lang.js +50 -39
- package/dist/lib/components/AcFeatureCard.vue_vue_type_script_setup_true_lang.js +14 -13
- package/dist/lib/components/AcFileEditor.vue_vue_type_script_setup_true_lang.js +16 -16
- package/dist/lib/components/AcFileUpload.vue.d.ts +2 -2
- package/dist/lib/components/AcFileUpload.vue_vue_type_script_setup_true_lang.js +55 -53
- package/dist/lib/components/AcFontScale.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/lib/components/AcFooter.js +5 -0
- package/dist/lib/components/AcFooter.vue.d.ts +37 -0
- package/dist/lib/components/AcFooter.vue_vue_type_script_setup_true_lang.js +107 -0
- package/dist/lib/components/AcForm.vue.d.ts +3 -0
- package/dist/lib/components/AcForm.vue_vue_type_script_setup_true_lang.js +4 -2
- package/dist/lib/components/AcFormArray.vue.d.ts +2 -2
- package/dist/lib/components/AcFormArray.vue_vue_type_script_setup_true_lang.js +149 -147
- package/dist/lib/components/AcFormFooter.vue.d.ts +2 -2
- package/dist/lib/components/AcFormFooter.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/lib/components/AcFormSection.vue.d.ts +7 -0
- package/dist/lib/components/AcFormSection.vue_vue_type_script_setup_true_lang.js +31 -21
- package/dist/lib/components/AcHeader.vue.d.ts +3 -3
- package/dist/lib/components/AcHeader.vue_vue_type_script_setup_true_lang.js +22 -22
- package/dist/lib/components/AcInfoTable.vue_vue_type_script_setup_true_lang.js +17 -13
- package/dist/lib/components/AcInput.vue.d.ts +3 -3
- package/dist/lib/components/AcInput.vue_vue_type_script_setup_true_lang.js +98 -87
- package/dist/lib/components/AcKbd.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/lib/components/AcKeyValueInput.js +5 -0
- package/dist/lib/components/AcKeyValueInput.vue.d.ts +114 -0
- package/dist/lib/components/AcKeyValueInput.vue_vue_type_script_setup_true_lang.js +320 -0
- package/dist/lib/components/AcLineChart.js +5 -0
- package/dist/lib/components/AcLineChart.vue.d.ts +38 -0
- package/dist/lib/components/AcLineChart.vue_vue_type_script_setup_true_lang.js +187 -0
- package/dist/lib/components/AcLocaleSwitcher.js +5 -0
- package/dist/lib/components/AcLocaleSwitcher.vue.d.ts +46 -0
- package/dist/lib/components/AcLocaleSwitcher.vue_vue_type_script_setup_true_lang.js +103 -0
- package/dist/lib/components/AcModal.vue_vue_type_script_setup_true_lang.js +23 -23
- package/dist/lib/components/AcNavbar.vue_vue_type_script_setup_true_lang.js +6 -6
- package/dist/lib/components/AcNavbarItem.vue.d.ts +1 -1
- package/dist/lib/components/AcNavbarItem.vue_vue_type_script_setup_true_lang.js +22 -22
- package/dist/lib/components/AcNotificationMenu.vue_vue_type_script_setup_true_lang.js +26 -26
- package/dist/lib/components/AcNumberInput.js +5 -0
- package/dist/lib/components/AcNumberInput.vue.d.ts +79 -0
- package/dist/lib/components/AcNumberInput.vue_vue_type_script_setup_true_lang.js +251 -0
- package/dist/lib/components/AcPage.vue.d.ts +2 -2
- package/dist/lib/components/AcPage.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/lib/components/AcPagination.vue.d.ts +20 -3
- package/dist/lib/components/AcPagination.vue_vue_type_script_setup_true_lang.js +81 -53
- package/dist/lib/components/AcPreloader.vue.d.ts +1 -1
- package/dist/lib/components/AcPreloader.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/lib/components/AcProgress.vue.d.ts +2 -2
- package/dist/lib/components/AcProgress.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/lib/components/AcResourceCard.vue.d.ts +2 -2
- package/dist/lib/components/AcResourceCard.vue_vue_type_script_setup_true_lang.js +13 -13
- package/dist/lib/components/AcSearchBar.vue.d.ts +1 -1
- package/dist/lib/components/AcSearchBar.vue_vue_type_script_setup_true_lang.js +9 -8
- package/dist/lib/components/AcSectionContent.vue.d.ts +2 -2
- package/dist/lib/components/AcSectionContent.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/lib/components/AcSegmentedControl.vue.d.ts +1 -1
- package/dist/lib/components/AcSegmentedControl.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/lib/components/AcSelect.vue.d.ts +4 -4
- package/dist/lib/components/AcSelect.vue_vue_type_script_setup_true_lang.js +230 -227
- package/dist/lib/components/AcSidePanel.vue_vue_type_script_setup_true_lang.js +31 -31
- package/dist/lib/components/AcSideTabs.vue.d.ts +1 -1
- package/dist/lib/components/AcSideTabs.vue_vue_type_script_setup_true_lang.js +37 -37
- package/dist/lib/components/AcSidebar.vue.d.ts +3 -3
- package/dist/lib/components/AcSidebar.vue_vue_type_script_setup_true_lang.js +75 -75
- package/dist/lib/components/AcSidebarItem.vue_vue_type_script_setup_true_lang.js +33 -32
- package/dist/lib/components/AcSidebarSection.vue_vue_type_script_setup_true_lang.js +6 -6
- package/dist/lib/components/AcSkeleton.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/lib/components/AcSlider.vue.d.ts +1 -1
- package/dist/lib/components/AcSlider.vue_vue_type_script_setup_true_lang.js +174 -172
- package/dist/lib/components/AcStatCard.vue.d.ts +3 -3
- package/dist/lib/components/AcStatCard.vue_vue_type_script_setup_true_lang.js +90 -85
- package/dist/lib/components/AcStatusBar.vue.d.ts +1 -1
- package/dist/lib/components/AcStatusBar.vue_vue_type_script_setup_true_lang.js +6 -6
- package/dist/lib/components/AcSteps.vue_vue_type_script_setup_true_lang.js +28 -28
- package/dist/lib/components/AcSwitch.vue_vue_type_script_setup_true_lang.js +39 -34
- package/dist/lib/components/AcSwitchCard.js +5 -0
- package/dist/lib/components/AcSwitchCard.vue.d.ts +59 -0
- package/dist/lib/components/AcSwitchCard.vue_vue_type_script_setup_true_lang.js +119 -0
- package/dist/lib/components/AcTable.vue_vue_type_script_setup_true_lang.js +87 -87
- package/dist/lib/components/AcTabs.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/lib/components/AcTag.vue.d.ts +1 -1
- package/dist/lib/components/AcTag.vue_vue_type_script_setup_true_lang.js +22 -22
- package/dist/lib/components/AcTagInput.js +5 -0
- package/dist/lib/components/AcTagInput.vue.d.ts +74 -0
- package/dist/lib/components/AcTagInput.vue_vue_type_script_setup_true_lang.js +291 -0
- package/dist/lib/components/AcTextarea.vue.d.ts +3 -3
- package/dist/lib/components/AcTextarea.vue_vue_type_script_setup_true_lang.js +89 -64
- package/dist/lib/components/AcThemeMode.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/lib/components/AcTimePicker.js +5 -0
- package/dist/lib/components/AcTimePicker.vue.d.ts +65 -0
- package/dist/lib/components/AcTimePicker.vue_vue_type_script_setup_true_lang.js +463 -0
- package/dist/lib/components/AcToaster.vue_vue_type_script_setup_true_lang.js +65 -71
- package/dist/lib/components/AcTooltip.vue.d.ts +1 -1
- package/dist/lib/components/AcTooltip.vue_vue_type_script_setup_true_lang.js +77 -67
- package/dist/lib/components/AcUsageCard.vue_vue_type_script_setup_true_lang.js +27 -27
- package/dist/lib/components/AcUserMenu.vue_vue_type_script_setup_true_lang.js +111 -103
- package/dist/lib/components/index.d.ts +14 -2
- package/dist/lib/components/status.d.ts +26 -0
- package/dist/lib/components/status.js +110 -0
- package/dist/lib/composables/copyText.d.ts +2 -1
- package/dist/lib/composables/copyText.js +2 -2
- package/dist/lib/composables/useApiPagination.d.ts +55 -0
- package/dist/lib/composables/useApiPagination.js +58 -0
- package/dist/lib/composables/useBulkSelection.d.ts +44 -0
- package/dist/lib/composables/useBulkSelection.js +41 -0
- package/dist/lib/composables/useFormValidation.d.ts +65 -0
- package/dist/lib/composables/useFormValidation.js +148 -0
- package/dist/lib/composables/useTablePagination.d.ts +49 -0
- package/dist/lib/composables/useTablePagination.js +41 -0
- package/dist/lib/editor/theme.js +65 -62
- package/dist/lib/index.d.ts +14 -0
- package/dist/lib/index.js +95 -78
- package/dist/lib/theme.css +391 -272
- package/package.json +11 -4
package/dist/lib/theme.css
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* AppsCode design tokens as a Tailwind v4 theme
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* AppsCode design tokens as a Tailwind v4 theme, in the look of the AppsCode Cloud console (cloud-ui):
|
|
3
|
+
* neutral greys on a #f9fafb canvas, the #00a651 brand green, Roboto for the interface,
|
|
4
|
+
* Google Sans Flex for headings and JetBrains Mono for code. Controls are 10px round, surfaces 14px.
|
|
5
5
|
* Tailwind's default palette, radii and shadows are cleared so only AppsCode values exist.
|
|
6
|
-
*
|
|
7
|
-
* v0.2 "premium" refinements on top of the source values: Geist type, surface and ring tokens,
|
|
8
|
-
* a softer layered elevation scale, and 6/10px radii for controls and surfaces.
|
|
9
|
-
* The brand and status colour scales are unchanged.
|
|
6
|
+
* Token names are kept from v1.0 so apps keep working; only their values follow cloud-ui.
|
|
10
7
|
*
|
|
11
8
|
* Consumers: @import "tailwindcss"; then @import this file. Load the fonts once:
|
|
12
|
-
* import "@fontsource-variable/
|
|
9
|
+
* import "@fontsource-variable/roboto";
|
|
10
|
+
* import "@fontsource-variable/google-sans-flex/opsz.css";
|
|
11
|
+
* import "@fontsource-variable/jetbrains-mono";
|
|
13
12
|
*/
|
|
14
13
|
@source "./components";
|
|
15
14
|
@source "./editor";
|
|
15
|
+
@source "./charts";
|
|
16
16
|
/* Dark mode is class-based: `.dark` (new) or `.is-dark-theme` (the old library's class) on <html> or any subtree. */
|
|
17
17
|
@custom-variant dark (&:where(.dark, .dark *, .is-dark-theme, .is-dark-theme *));
|
|
18
18
|
:root {
|
|
19
19
|
/* Runtime brand hue — change these on <html> to re-hue every primary/secondary step.
|
|
20
|
-
|
|
21
|
-
/* Interface scale: 1 = the
|
|
20
|
+
32.5% lightness is #00a651, the cloud-ui green (3.2:1 with white text; see the Theming page). */
|
|
21
|
+
/* Interface scale: 1 = the 14px base. Set it on <html> (see useFontScale) and text, line heights, spacing
|
|
22
22
|
and radii grow together, so layouts keep their proportions. */
|
|
23
23
|
--ac-scale: 1;
|
|
24
24
|
--primary-hue: 149;
|
|
25
25
|
--primary-saturation: 100%;
|
|
26
|
-
--primary-light:
|
|
26
|
+
--primary-light: 32.5%;
|
|
27
27
|
--secondary-hue: 196;
|
|
28
28
|
--secondary-saturation: 50%;
|
|
29
29
|
--secondary-light: 20%;
|
|
@@ -40,7 +40,9 @@
|
|
|
40
40
|
|
|
41
41
|
/* ac-primary: AppsCode green */
|
|
42
42
|
--color-primary: hsl(var(--primary-hue) var(--primary-saturation) var(--primary-light));
|
|
43
|
-
--color-primary-hover: hsl(var(--primary-hue) var(--primary-saturation)
|
|
43
|
+
--color-primary-hover: hsl(var(--primary-hue) var(--primary-saturation) var(--primary-light) / 0.9);
|
|
44
|
+
/* Primary text on tints and white: links, ghost and outline buttons, active tabs (cloud-ui success-strong) */
|
|
45
|
+
--color-primary-strong: hsl(var(--primary-hue) 94% 25%);
|
|
44
46
|
--color-primary-5: hsl(var(--primary-hue) var(--primary-saturation) 5%);
|
|
45
47
|
--color-primary-10: hsl(var(--primary-hue) var(--primary-saturation) 10%);
|
|
46
48
|
--color-primary-20: hsl(var(--primary-hue) var(--primary-saturation) 20%);
|
|
@@ -76,79 +78,79 @@
|
|
|
76
78
|
--color-secondary-dark-gray: hsl(var(--secondary-hue) 10% 10%);
|
|
77
79
|
|
|
78
80
|
/* green */
|
|
79
|
-
--color-green-5: hsl(
|
|
80
|
-
--color-green-10: hsl(
|
|
81
|
-
--color-green-20: hsl(
|
|
82
|
-
--color-green-30: hsl(
|
|
83
|
-
--color-green-40: hsl(
|
|
84
|
-
--color-green-50: hsl(
|
|
85
|
-
--color-green-60: hsl(
|
|
86
|
-
--color-green-70: hsl(
|
|
87
|
-
--color-green-80: hsl(
|
|
88
|
-
--color-green-90: hsl(
|
|
89
|
-
--color-green-93: hsl(
|
|
90
|
-
--color-green-95: hsl(
|
|
91
|
-
--color-green-97: hsl(
|
|
81
|
+
--color-green-5: hsl(149 65% 5%);
|
|
82
|
+
--color-green-10: hsl(149 65% 10%);
|
|
83
|
+
--color-green-20: hsl(149 65% 20%);
|
|
84
|
+
--color-green-30: hsl(149 65% 30%);
|
|
85
|
+
--color-green-40: hsl(149 65% 40%);
|
|
86
|
+
--color-green-50: hsl(149 65% 50%);
|
|
87
|
+
--color-green-60: hsl(149 65% 60%);
|
|
88
|
+
--color-green-70: hsl(149 65% 70%);
|
|
89
|
+
--color-green-80: hsl(149 65% 80%);
|
|
90
|
+
--color-green-90: hsl(149 65% 90%);
|
|
91
|
+
--color-green-93: hsl(149 65% 93%);
|
|
92
|
+
--color-green-95: hsl(149 65% 95%);
|
|
93
|
+
--color-green-97: hsl(149 65% 97%);
|
|
92
94
|
|
|
93
95
|
/* blue */
|
|
94
|
-
--color-blue-5: hsl(
|
|
95
|
-
--color-blue-10: hsl(
|
|
96
|
-
--color-blue-20: hsl(
|
|
97
|
-
--color-blue-30: hsl(
|
|
98
|
-
--color-blue-40: hsl(
|
|
99
|
-
--color-blue-50: hsl(
|
|
100
|
-
--color-blue-60: hsl(
|
|
101
|
-
--color-blue-70: hsl(
|
|
102
|
-
--color-blue-80: hsl(
|
|
103
|
-
--color-blue-90: hsl(
|
|
104
|
-
--color-blue-93: hsl(
|
|
105
|
-
--color-blue-95: hsl(
|
|
106
|
-
--color-blue-97: hsl(
|
|
96
|
+
--color-blue-5: hsl(215 85% 5%);
|
|
97
|
+
--color-blue-10: hsl(215 85% 10%);
|
|
98
|
+
--color-blue-20: hsl(215 85% 20%);
|
|
99
|
+
--color-blue-30: hsl(215 85% 30%);
|
|
100
|
+
--color-blue-40: hsl(215 85% 40%);
|
|
101
|
+
--color-blue-50: hsl(215 85% 50%);
|
|
102
|
+
--color-blue-60: hsl(215 85% 60%);
|
|
103
|
+
--color-blue-70: hsl(215 85% 70%);
|
|
104
|
+
--color-blue-80: hsl(215 85% 80%);
|
|
105
|
+
--color-blue-90: hsl(215 85% 90%);
|
|
106
|
+
--color-blue-93: hsl(215 85% 93%);
|
|
107
|
+
--color-blue-95: hsl(215 85% 95%);
|
|
108
|
+
--color-blue-97: hsl(215 85% 97%);
|
|
107
109
|
|
|
108
110
|
/* purple */
|
|
109
|
-
--color-purple-5: hsl(
|
|
110
|
-
--color-purple-10: hsl(
|
|
111
|
-
--color-purple-20: hsl(
|
|
112
|
-
--color-purple-30: hsl(
|
|
113
|
-
--color-purple-40: hsl(
|
|
114
|
-
--color-purple-50: hsl(
|
|
115
|
-
--color-purple-60: hsl(
|
|
116
|
-
--color-purple-70: hsl(
|
|
117
|
-
--color-purple-80: hsl(
|
|
118
|
-
--color-purple-90: hsl(
|
|
119
|
-
--color-purple-93: hsl(
|
|
120
|
-
--color-purple-95: hsl(
|
|
121
|
-
--color-purple-97: hsl(
|
|
111
|
+
--color-purple-5: hsl(262 75% 5%);
|
|
112
|
+
--color-purple-10: hsl(262 75% 10%);
|
|
113
|
+
--color-purple-20: hsl(262 75% 20%);
|
|
114
|
+
--color-purple-30: hsl(262 75% 30%);
|
|
115
|
+
--color-purple-40: hsl(262 75% 40%);
|
|
116
|
+
--color-purple-50: hsl(262 75% 50%);
|
|
117
|
+
--color-purple-60: hsl(262 75% 60%);
|
|
118
|
+
--color-purple-70: hsl(262 75% 70%);
|
|
119
|
+
--color-purple-80: hsl(262 75% 80%);
|
|
120
|
+
--color-purple-90: hsl(262 75% 90%);
|
|
121
|
+
--color-purple-93: hsl(262 75% 93%);
|
|
122
|
+
--color-purple-95: hsl(262 75% 95%);
|
|
123
|
+
--color-purple-97: hsl(262 75% 97%);
|
|
122
124
|
|
|
123
125
|
/* yellow */
|
|
124
|
-
--color-yellow-5: hsl(38
|
|
125
|
-
--color-yellow-10: hsl(38
|
|
126
|
-
--color-yellow-20: hsl(38
|
|
127
|
-
--color-yellow-30: hsl(38
|
|
128
|
-
--color-yellow-40: hsl(38
|
|
129
|
-
--color-yellow-50: hsl(38
|
|
130
|
-
--color-yellow-60: hsl(38
|
|
131
|
-
--color-yellow-70: hsl(38
|
|
132
|
-
--color-yellow-80: hsl(38
|
|
133
|
-
--color-yellow-90: hsl(38
|
|
134
|
-
--color-yellow-93: hsl(38
|
|
135
|
-
--color-yellow-95: hsl(38
|
|
136
|
-
--color-yellow-97: hsl(38
|
|
126
|
+
--color-yellow-5: hsl(38 92% 5%);
|
|
127
|
+
--color-yellow-10: hsl(38 92% 10%);
|
|
128
|
+
--color-yellow-20: hsl(38 92% 20%);
|
|
129
|
+
--color-yellow-30: hsl(38 92% 30%);
|
|
130
|
+
--color-yellow-40: hsl(38 92% 40%);
|
|
131
|
+
--color-yellow-50: hsl(38 92% 50%);
|
|
132
|
+
--color-yellow-60: hsl(38 92% 60%);
|
|
133
|
+
--color-yellow-70: hsl(38 92% 70%);
|
|
134
|
+
--color-yellow-80: hsl(38 92% 80%);
|
|
135
|
+
--color-yellow-90: hsl(38 92% 90%);
|
|
136
|
+
--color-yellow-93: hsl(38 92% 93%);
|
|
137
|
+
--color-yellow-95: hsl(38 92% 95%);
|
|
138
|
+
--color-yellow-97: hsl(38 92% 97%);
|
|
137
139
|
|
|
138
140
|
/* red */
|
|
139
|
-
--color-red-5: hsl(
|
|
140
|
-
--color-red-10: hsl(
|
|
141
|
-
--color-red-20: hsl(
|
|
142
|
-
--color-red-30: hsl(
|
|
143
|
-
--color-red-40: hsl(
|
|
144
|
-
--color-red-50: hsl(
|
|
145
|
-
--color-red-60: hsl(
|
|
146
|
-
--color-red-70: hsl(
|
|
147
|
-
--color-red-80: hsl(
|
|
148
|
-
--color-red-90: hsl(
|
|
149
|
-
--color-red-93: hsl(
|
|
150
|
-
--color-red-95: hsl(
|
|
151
|
-
--color-red-97: hsl(
|
|
141
|
+
--color-red-5: hsl(0 75% 5%);
|
|
142
|
+
--color-red-10: hsl(0 75% 10%);
|
|
143
|
+
--color-red-20: hsl(0 75% 20%);
|
|
144
|
+
--color-red-30: hsl(0 75% 30%);
|
|
145
|
+
--color-red-40: hsl(0 75% 40%);
|
|
146
|
+
--color-red-50: hsl(0 75% 50%);
|
|
147
|
+
--color-red-60: hsl(0 75% 60%);
|
|
148
|
+
--color-red-70: hsl(0 75% 70%);
|
|
149
|
+
--color-red-80: hsl(0 75% 80%);
|
|
150
|
+
--color-red-90: hsl(0 75% 90%);
|
|
151
|
+
--color-red-93: hsl(0 75% 93%);
|
|
152
|
+
--color-red-95: hsl(0 75% 95%);
|
|
153
|
+
--color-red-97: hsl(0 75% 97%);
|
|
152
154
|
|
|
153
155
|
/* gray */
|
|
154
156
|
--color-gray-5: hsl(0 0% 5%);
|
|
@@ -165,87 +167,115 @@
|
|
|
165
167
|
--color-gray-95: hsl(0 0% 95%);
|
|
166
168
|
--color-gray-97: hsl(0 0% 97%);
|
|
167
169
|
|
|
168
|
-
/* status */
|
|
169
|
-
|
|
170
|
-
--color-
|
|
171
|
-
--color-
|
|
172
|
-
--color-
|
|
173
|
-
--color-
|
|
174
|
-
/* Hover fills
|
|
175
|
-
--color-success-hover:
|
|
176
|
-
--color-info-hover:
|
|
177
|
-
--color-warning-hover:
|
|
178
|
-
--color-danger-hover:
|
|
179
|
-
--color-
|
|
170
|
+
/* status: cloud-ui's success, info, warning, destructive and pending */
|
|
171
|
+
--color-success: #00a651;
|
|
172
|
+
--color-info: #0069ff;
|
|
173
|
+
--color-warning: #f59e0b;
|
|
174
|
+
--color-danger: #ef4444;
|
|
175
|
+
--color-pending: #8b5cf6;
|
|
176
|
+
/* Hover fills lighten to 90%, like cloud-ui's bg-x/90. */
|
|
177
|
+
--color-success-hover: rgb(0 166 81 / 0.9);
|
|
178
|
+
--color-info-hover: rgb(0 105 255 / 0.9);
|
|
179
|
+
--color-warning-hover: rgb(245 158 11 / 0.9);
|
|
180
|
+
--color-danger-hover: rgb(239 68 68 / 0.9);
|
|
181
|
+
--color-pending-hover: rgb(139 92 246 / 0.9);
|
|
182
|
+
--color-on-warning: #1c1300;
|
|
183
|
+
/* Status text on tints and plain surfaces: the AA-contrast variants (5:1 or more) */
|
|
184
|
+
--color-success-strong: #047a3c;
|
|
185
|
+
--color-info-strong: #0050c4;
|
|
186
|
+
--color-warning-strong: #a15c07;
|
|
187
|
+
--color-danger-strong: #c81e1e;
|
|
188
|
+
--color-pending-strong: #6d28d9;
|
|
180
189
|
|
|
181
|
-
/* slate: text and border ramp */
|
|
182
|
-
--color-slate-5: #
|
|
183
|
-
--color-slate-10: #
|
|
184
|
-
--color-slate-20: #
|
|
185
|
-
--color-slate-30: #
|
|
186
|
-
--color-slate-40: #
|
|
187
|
-
--color-slate-50: #
|
|
188
|
-
--color-slate-60: #
|
|
189
|
-
--color-slate-70: #
|
|
190
|
-
--color-slate-80: #
|
|
191
|
-
--color-slate-90: #
|
|
192
|
-
--color-slate-95: #
|
|
190
|
+
/* slate: the neutral text and border ramp (cloud-ui greys; the name is kept for compatibility) */
|
|
191
|
+
--color-slate-5: #0a0a0a;
|
|
192
|
+
--color-slate-10: #171717;
|
|
193
|
+
--color-slate-20: #252525;
|
|
194
|
+
--color-slate-30: #3d3d3d;
|
|
195
|
+
--color-slate-40: #4a4a4a;
|
|
196
|
+
--color-slate-50: #5c5c5c;
|
|
197
|
+
--color-slate-60: #8f8f8f;
|
|
198
|
+
--color-slate-70: #d6d6d6;
|
|
199
|
+
--color-slate-80: #ebebeb;
|
|
200
|
+
--color-slate-90: #f0f0f0;
|
|
201
|
+
--color-slate-95: #f7f7f7;
|
|
193
202
|
|
|
194
|
-
/* semantic text and borders
|
|
195
|
-
--color-heading:
|
|
196
|
-
--color-body:
|
|
197
|
-
--color-label:
|
|
198
|
-
--color-muted:
|
|
199
|
-
--color-link:
|
|
200
|
-
--color-border-light:
|
|
201
|
-
--color-border:
|
|
202
|
-
--color-border-dark:
|
|
203
|
-
|
|
203
|
+
/* semantic text and borders */
|
|
204
|
+
--color-heading: #252525;
|
|
205
|
+
--color-body: #252525;
|
|
206
|
+
--color-label: #252525;
|
|
207
|
+
--color-muted: #5c5c5c;
|
|
208
|
+
--color-link: #252525;
|
|
209
|
+
--color-border-light: #f0f0f0;
|
|
210
|
+
--color-border: #ebebeb;
|
|
211
|
+
--color-border-dark: #d6d6d6;
|
|
212
|
+
/* The dark sidebar and status bar variants */
|
|
213
|
+
--color-sidebar: #171717;
|
|
204
214
|
|
|
205
|
-
/* surfaces */
|
|
206
|
-
--color-
|
|
207
|
-
--color-surface
|
|
208
|
-
--color-surface-
|
|
209
|
-
|
|
210
|
-
|
|
215
|
+
/* surfaces: white cards on a #f9fafb page; fields sit on the page tone */
|
|
216
|
+
--color-background: #f9fafb;
|
|
217
|
+
--color-surface: #ffffff;
|
|
218
|
+
--color-surface-muted: #f8f8f8;
|
|
219
|
+
--color-surface-sunken: #f0f0f0;
|
|
220
|
+
/* Neutral interaction tints: row hover, selected list item, soft chips */
|
|
221
|
+
--color-accent: #eaf0f4;
|
|
222
|
+
--color-accent-hover: #f2f9fd;
|
|
223
|
+
--color-accent-active: #dae9f5;
|
|
224
|
+
/* Focus: a solid primary ring, 2px, offset 2px on buttons */
|
|
225
|
+
--color-ring: hsl(var(--primary-hue) var(--primary-saturation) var(--primary-light));
|
|
211
226
|
/* modal and drawer backdrop */
|
|
212
|
-
--color-overlay: rgb(
|
|
227
|
+
--color-overlay: rgb(0 0 0 / 0.6);
|
|
228
|
+
/* Tooltips: a near-black bubble in both themes */
|
|
229
|
+
--color-tooltip: #171717;
|
|
230
|
+
--color-on-tooltip: #f5f5f5;
|
|
213
231
|
|
|
214
|
-
/*
|
|
215
|
-
|
|
216
|
-
--
|
|
232
|
+
/* Chart palette (the /charts entry), in a fixed order: brand green, blue, amber, violet, red, cyan, then two
|
|
233
|
+
neutral greys for "Other" and remaining capacity. Adjacent hues stay apart under colour-blindness simulation. */
|
|
234
|
+
--color-chart-1: hsl(var(--primary-hue) var(--primary-saturation) var(--primary-light));
|
|
235
|
+
--color-chart-2: #0069ff;
|
|
236
|
+
--color-chart-3: #d97706;
|
|
237
|
+
--color-chart-4: #8b5cf6;
|
|
238
|
+
--color-chart-5: #ef4444;
|
|
239
|
+
--color-chart-6: #0891b2;
|
|
240
|
+
--color-chart-7: #737373;
|
|
241
|
+
--color-chart-8: #b5b5b5;
|
|
242
|
+
|
|
243
|
+
/* type — Roboto for the interface, Google Sans Flex for headings, JetBrains Mono for code */
|
|
244
|
+
--font-sans: "Roboto Variable", "Roboto", ui-sans-serif, system-ui, sans-serif;
|
|
245
|
+
--font-heading: "Google Sans Flex Variable", "Google Sans Flex", "Roboto Variable", "Roboto", ui-sans-serif, system-ui, sans-serif;
|
|
246
|
+
--font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
|
|
217
247
|
--text-xm: calc(10px * var(--ac-scale));
|
|
218
248
|
--text-xm--line-height: calc(14px * var(--ac-scale));
|
|
219
249
|
--text-sm: calc(11px * var(--ac-scale));
|
|
220
250
|
--text-sm--line-height: calc(16px * var(--ac-scale));
|
|
221
251
|
--text-xs: calc(12px * var(--ac-scale));
|
|
222
252
|
--text-xs--line-height: calc(16px * var(--ac-scale));
|
|
223
|
-
--text-base: calc(
|
|
253
|
+
--text-base: calc(14px * var(--ac-scale));
|
|
224
254
|
--text-base--line-height: calc(20px * var(--ac-scale));
|
|
225
|
-
--text-lg: calc(
|
|
226
|
-
--text-lg--line-height: calc(
|
|
227
|
-
--text-xl: calc(
|
|
228
|
-
--text-xl--line-height: calc(
|
|
229
|
-
--text-2xl: calc(
|
|
255
|
+
--text-lg: calc(16px * var(--ac-scale));
|
|
256
|
+
--text-lg--line-height: calc(24px * var(--ac-scale));
|
|
257
|
+
--text-xl: calc(18px * var(--ac-scale));
|
|
258
|
+
--text-xl--line-height: calc(28px * var(--ac-scale));
|
|
259
|
+
--text-2xl: calc(20px * var(--ac-scale));
|
|
230
260
|
--text-2xl--line-height: calc(28px * var(--ac-scale));
|
|
231
261
|
--text-3xl: calc(24px * var(--ac-scale));
|
|
232
262
|
--text-3xl--line-height: calc(32px * var(--ac-scale));
|
|
233
263
|
--text-3xl--letter-spacing: -0.02em;
|
|
234
264
|
--text-4xl: calc(30px * var(--ac-scale));
|
|
235
|
-
--text-4xl--line-height: calc(
|
|
236
|
-
--text-4xl--letter-spacing: -0.
|
|
265
|
+
--text-4xl--line-height: calc(36px * var(--ac-scale));
|
|
266
|
+
--text-4xl--letter-spacing: -0.02em;
|
|
237
267
|
--text-5xl: calc(36px * var(--ac-scale));
|
|
238
|
-
--text-5xl--line-height: calc(
|
|
239
|
-
--text-5xl--letter-spacing: -0.
|
|
240
|
-
--text-6xl: calc(
|
|
241
|
-
--text-6xl--line-height: calc(
|
|
268
|
+
--text-5xl--line-height: calc(40px * var(--ac-scale));
|
|
269
|
+
--text-5xl--letter-spacing: -0.025em;
|
|
270
|
+
--text-6xl: calc(48px * var(--ac-scale));
|
|
271
|
+
--text-6xl--line-height: calc(52px * var(--ac-scale));
|
|
242
272
|
--text-6xl--letter-spacing: -0.03em;
|
|
243
|
-
--text-h1: calc(
|
|
244
|
-
--text-h2: calc(
|
|
245
|
-
--text-h3: calc(
|
|
273
|
+
--text-h1: calc(30px * var(--ac-scale));
|
|
274
|
+
--text-h2: calc(24px * var(--ac-scale));
|
|
275
|
+
--text-h3: calc(20px * var(--ac-scale));
|
|
246
276
|
--text-h4: calc(18px * var(--ac-scale));
|
|
247
|
-
--text-h5: calc(
|
|
248
|
-
--text-h6: calc(
|
|
277
|
+
--text-h5: calc(16px * var(--ac-scale));
|
|
278
|
+
--text-h6: calc(14px * var(--ac-scale));
|
|
249
279
|
|
|
250
280
|
/* spacing: 1 unit = 4px, so p-4 = 16px like the source .p-16 */
|
|
251
281
|
--spacing: calc(4px * var(--ac-scale));
|
|
@@ -265,32 +295,37 @@
|
|
|
265
295
|
--container-5xl: 1024px;
|
|
266
296
|
--container-6xl: 1152px;
|
|
267
297
|
--container-7xl: 1280px;
|
|
298
|
+
/* cloud-ui's page width (custom-container) */
|
|
299
|
+
--container-page: 1200px;
|
|
268
300
|
|
|
269
|
-
/* radius:
|
|
301
|
+
/* radius: 10px on controls, 14px on cards, 16px on dialogs, 8px on menu items; older steps are kept for apps */
|
|
270
302
|
--radius-2: calc(2px * var(--ac-scale));
|
|
271
303
|
--radius-4: calc(4px * var(--ac-scale));
|
|
272
304
|
--radius-6: calc(6px * var(--ac-scale));
|
|
273
305
|
--radius-8: calc(8px * var(--ac-scale));
|
|
274
306
|
--radius-10: calc(10px * var(--ac-scale));
|
|
275
307
|
--radius-12: calc(12px * var(--ac-scale));
|
|
308
|
+
--radius-14: calc(14px * var(--ac-scale));
|
|
276
309
|
--radius-16: calc(16px * var(--ac-scale));
|
|
277
310
|
--radius-50: calc(50px * var(--ac-scale));
|
|
278
311
|
|
|
279
|
-
/* elevation:
|
|
280
|
-
--shadow-xs: 0 1px 2px 0 rgb(
|
|
281
|
-
--shadow-sm: 0 1px
|
|
282
|
-
--shadow-md: 0
|
|
283
|
-
--shadow-lg: 0
|
|
284
|
-
--shadow-xl: 0
|
|
285
|
-
/*
|
|
286
|
-
--shadow-
|
|
287
|
-
|
|
312
|
+
/* elevation: cloud-ui's neutral scale. Cards rest on a border, not a shadow. */
|
|
313
|
+
--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
314
|
+
--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
|
|
315
|
+
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
|
|
316
|
+
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
|
|
317
|
+
--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
|
|
318
|
+
/* Raised card on hover */
|
|
319
|
+
--shadow-card: 0 2px 4px rgb(15 23 42 / 0.04), 0 12px 24px -6px rgb(15 23 42 / 0.1);
|
|
320
|
+
/* Solid buttons */
|
|
321
|
+
--shadow-button: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
|
|
322
|
+
--inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.04);
|
|
288
323
|
|
|
289
324
|
--ease-out-soft: cubic-bezier(0.22, 1, 0.36, 1);
|
|
290
325
|
|
|
291
326
|
--animate-shake: shake 0.5s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
|
|
292
|
-
--animate-fade-in: fade-in 0.
|
|
293
|
-
--animate-pop-in: pop-in 0.
|
|
327
|
+
--animate-fade-in: fade-in 0.15s var(--ease-out-soft) both;
|
|
328
|
+
--animate-pop-in: pop-in 0.15s var(--ease-out-soft) both;
|
|
294
329
|
@keyframes shake {
|
|
295
330
|
10%, 90% { transform: translate3d(-1px, 0, 0); }
|
|
296
331
|
20%, 80% { transform: translate3d(2px, 0, 0); }
|
|
@@ -302,7 +337,7 @@
|
|
|
302
337
|
to { opacity: 1; }
|
|
303
338
|
}
|
|
304
339
|
@keyframes pop-in {
|
|
305
|
-
from { opacity: 0; transform:
|
|
340
|
+
from { opacity: 0; transform: scale(0.95); }
|
|
306
341
|
to { opacity: 1; transform: none; }
|
|
307
342
|
}
|
|
308
343
|
}
|
|
@@ -314,9 +349,8 @@
|
|
|
314
349
|
.dark,
|
|
315
350
|
.is-dark-theme {
|
|
316
351
|
color-scheme: dark;
|
|
317
|
-
/* primary: the
|
|
318
|
-
--color-primary: hsl(var(--primary-hue)
|
|
319
|
-
--color-primary-hover: hsl(var(--primary-hue) var(--primary-saturation) calc(var(--primary-light) + 1%));
|
|
352
|
+
/* primary: the same green fill as light mode, like cloud-ui; text on tints lifts to a light green */
|
|
353
|
+
--color-primary-strong: hsl(var(--primary-hue) 70% 58%);
|
|
320
354
|
--color-primary-5: hsl(var(--primary-hue) var(--primary-saturation) 95%);
|
|
321
355
|
--color-primary-10: hsl(var(--primary-hue) var(--primary-saturation) 90%);
|
|
322
356
|
--color-primary-20: hsl(var(--primary-hue) var(--primary-saturation) 82%);
|
|
@@ -349,75 +383,75 @@
|
|
|
349
383
|
--color-secondary-light-gray: hsl(var(--secondary-hue) 10% 12%);
|
|
350
384
|
--color-secondary-dark-gray: hsl(var(--secondary-hue) 10% 90%);
|
|
351
385
|
/* green */
|
|
352
|
-
--color-green-5: hsl(
|
|
353
|
-
--color-green-10: hsl(
|
|
354
|
-
--color-green-20: hsl(
|
|
355
|
-
--color-green-30: hsl(
|
|
356
|
-
--color-green-40: hsl(
|
|
357
|
-
--color-green-50: hsl(
|
|
358
|
-
--color-green-60: hsl(
|
|
359
|
-
--color-green-70: hsl(
|
|
360
|
-
--color-green-80: hsl(
|
|
361
|
-
--color-green-90: hsl(
|
|
362
|
-
--color-green-93: hsl(
|
|
363
|
-
--color-green-95: hsl(
|
|
364
|
-
--color-green-97: hsl(
|
|
386
|
+
--color-green-5: hsl(149 65% 95%);
|
|
387
|
+
--color-green-10: hsl(149 65% 90%);
|
|
388
|
+
--color-green-20: hsl(149 65% 82%);
|
|
389
|
+
--color-green-30: hsl(149 65% 72%);
|
|
390
|
+
--color-green-40: hsl(149 65% 62%);
|
|
391
|
+
--color-green-50: hsl(149 65% 52%);
|
|
392
|
+
--color-green-60: hsl(149 65% 42%);
|
|
393
|
+
--color-green-70: hsl(149 65% 32%);
|
|
394
|
+
--color-green-80: hsl(149 65% 55% / 0.32);
|
|
395
|
+
--color-green-90: hsl(149 65% 55% / 0.2);
|
|
396
|
+
--color-green-93: hsl(149 65% 55% / 0.15);
|
|
397
|
+
--color-green-95: hsl(149 65% 55% / 0.11);
|
|
398
|
+
--color-green-97: hsl(149 65% 55% / 0.07);
|
|
365
399
|
/* blue */
|
|
366
|
-
--color-blue-5: hsl(
|
|
367
|
-
--color-blue-10: hsl(
|
|
368
|
-
--color-blue-20: hsl(
|
|
369
|
-
--color-blue-30: hsl(
|
|
370
|
-
--color-blue-40: hsl(
|
|
371
|
-
--color-blue-50: hsl(
|
|
372
|
-
--color-blue-60: hsl(
|
|
373
|
-
--color-blue-70: hsl(
|
|
374
|
-
--color-blue-80: hsl(
|
|
375
|
-
--color-blue-90: hsl(
|
|
376
|
-
--color-blue-93: hsl(
|
|
377
|
-
--color-blue-95: hsl(
|
|
378
|
-
--color-blue-97: hsl(
|
|
400
|
+
--color-blue-5: hsl(215 85% 95%);
|
|
401
|
+
--color-blue-10: hsl(215 85% 90%);
|
|
402
|
+
--color-blue-20: hsl(215 85% 82%);
|
|
403
|
+
--color-blue-30: hsl(215 85% 72%);
|
|
404
|
+
--color-blue-40: hsl(215 85% 62%);
|
|
405
|
+
--color-blue-50: hsl(215 85% 52%);
|
|
406
|
+
--color-blue-60: hsl(215 85% 42%);
|
|
407
|
+
--color-blue-70: hsl(215 85% 32%);
|
|
408
|
+
--color-blue-80: hsl(215 85% 55% / 0.32);
|
|
409
|
+
--color-blue-90: hsl(215 85% 55% / 0.2);
|
|
410
|
+
--color-blue-93: hsl(215 85% 55% / 0.15);
|
|
411
|
+
--color-blue-95: hsl(215 85% 55% / 0.11);
|
|
412
|
+
--color-blue-97: hsl(215 85% 55% / 0.07);
|
|
379
413
|
/* purple */
|
|
380
|
-
--color-purple-5: hsl(
|
|
381
|
-
--color-purple-10: hsl(
|
|
382
|
-
--color-purple-20: hsl(
|
|
383
|
-
--color-purple-30: hsl(
|
|
384
|
-
--color-purple-40: hsl(
|
|
385
|
-
--color-purple-50: hsl(
|
|
386
|
-
--color-purple-60: hsl(
|
|
387
|
-
--color-purple-70: hsl(
|
|
388
|
-
--color-purple-80: hsl(
|
|
389
|
-
--color-purple-90: hsl(
|
|
390
|
-
--color-purple-93: hsl(
|
|
391
|
-
--color-purple-95: hsl(
|
|
392
|
-
--color-purple-97: hsl(
|
|
414
|
+
--color-purple-5: hsl(262 75% 95%);
|
|
415
|
+
--color-purple-10: hsl(262 75% 90%);
|
|
416
|
+
--color-purple-20: hsl(262 75% 82%);
|
|
417
|
+
--color-purple-30: hsl(262 75% 72%);
|
|
418
|
+
--color-purple-40: hsl(262 75% 62%);
|
|
419
|
+
--color-purple-50: hsl(262 75% 52%);
|
|
420
|
+
--color-purple-60: hsl(262 75% 42%);
|
|
421
|
+
--color-purple-70: hsl(262 75% 32%);
|
|
422
|
+
--color-purple-80: hsl(262 75% 55% / 0.32);
|
|
423
|
+
--color-purple-90: hsl(262 75% 55% / 0.2);
|
|
424
|
+
--color-purple-93: hsl(262 75% 55% / 0.15);
|
|
425
|
+
--color-purple-95: hsl(262 75% 55% / 0.11);
|
|
426
|
+
--color-purple-97: hsl(262 75% 55% / 0.07);
|
|
393
427
|
/* yellow */
|
|
394
|
-
--color-yellow-5: hsl(38
|
|
395
|
-
--color-yellow-10: hsl(38
|
|
396
|
-
--color-yellow-20: hsl(38
|
|
397
|
-
--color-yellow-30: hsl(38
|
|
398
|
-
--color-yellow-40: hsl(38
|
|
399
|
-
--color-yellow-50: hsl(38
|
|
400
|
-
--color-yellow-60: hsl(38
|
|
401
|
-
--color-yellow-70: hsl(38
|
|
402
|
-
--color-yellow-80: hsl(38
|
|
403
|
-
--color-yellow-90: hsl(38
|
|
404
|
-
--color-yellow-93: hsl(38
|
|
405
|
-
--color-yellow-95: hsl(38
|
|
406
|
-
--color-yellow-97: hsl(38
|
|
428
|
+
--color-yellow-5: hsl(38 92% 95%);
|
|
429
|
+
--color-yellow-10: hsl(38 92% 90%);
|
|
430
|
+
--color-yellow-20: hsl(38 92% 82%);
|
|
431
|
+
--color-yellow-30: hsl(38 92% 72%);
|
|
432
|
+
--color-yellow-40: hsl(38 92% 62%);
|
|
433
|
+
--color-yellow-50: hsl(38 92% 52%);
|
|
434
|
+
--color-yellow-60: hsl(38 92% 42%);
|
|
435
|
+
--color-yellow-70: hsl(38 92% 32%);
|
|
436
|
+
--color-yellow-80: hsl(38 92% 55% / 0.32);
|
|
437
|
+
--color-yellow-90: hsl(38 92% 55% / 0.2);
|
|
438
|
+
--color-yellow-93: hsl(38 92% 55% / 0.15);
|
|
439
|
+
--color-yellow-95: hsl(38 92% 55% / 0.11);
|
|
440
|
+
--color-yellow-97: hsl(38 92% 55% / 0.07);
|
|
407
441
|
/* red */
|
|
408
|
-
--color-red-5: hsl(
|
|
409
|
-
--color-red-10: hsl(
|
|
410
|
-
--color-red-20: hsl(
|
|
411
|
-
--color-red-30: hsl(
|
|
412
|
-
--color-red-40: hsl(
|
|
413
|
-
--color-red-50: hsl(
|
|
414
|
-
--color-red-60: hsl(
|
|
415
|
-
--color-red-70: hsl(
|
|
416
|
-
--color-red-80: hsl(
|
|
417
|
-
--color-red-90: hsl(
|
|
418
|
-
--color-red-93: hsl(
|
|
419
|
-
--color-red-95: hsl(
|
|
420
|
-
--color-red-97: hsl(
|
|
442
|
+
--color-red-5: hsl(0 75% 95%);
|
|
443
|
+
--color-red-10: hsl(0 75% 90%);
|
|
444
|
+
--color-red-20: hsl(0 75% 82%);
|
|
445
|
+
--color-red-30: hsl(0 75% 72%);
|
|
446
|
+
--color-red-40: hsl(0 75% 62%);
|
|
447
|
+
--color-red-50: hsl(0 75% 52%);
|
|
448
|
+
--color-red-60: hsl(0 75% 42%);
|
|
449
|
+
--color-red-70: hsl(0 75% 32%);
|
|
450
|
+
--color-red-80: hsl(0 75% 55% / 0.32);
|
|
451
|
+
--color-red-90: hsl(0 75% 55% / 0.2);
|
|
452
|
+
--color-red-93: hsl(0 75% 55% / 0.15);
|
|
453
|
+
--color-red-95: hsl(0 75% 55% / 0.11);
|
|
454
|
+
--color-red-97: hsl(0 75% 55% / 0.07);
|
|
421
455
|
/* gray */
|
|
422
456
|
--color-gray-5: hsl(0 0% 95%);
|
|
423
457
|
--color-gray-10: hsl(0 0% 90%);
|
|
@@ -433,47 +467,65 @@
|
|
|
433
467
|
--color-gray-95: hsl(0 0% 55% / 0.11);
|
|
434
468
|
--color-gray-97: hsl(0 0% 55% / 0.07);
|
|
435
469
|
/* slate: inverted so text stays light and borders stay subtle */
|
|
436
|
-
--color-slate-5: #
|
|
437
|
-
--color-slate-10: #
|
|
438
|
-
--color-slate-20: #
|
|
439
|
-
--color-slate-30: #
|
|
440
|
-
--color-slate-40: #
|
|
441
|
-
--color-slate-50: #
|
|
442
|
-
--color-slate-60: #
|
|
443
|
-
--color-slate-70: #
|
|
444
|
-
--color-slate-80: #
|
|
445
|
-
--color-slate-90: #
|
|
446
|
-
--color-slate-95: #
|
|
447
|
-
/* status
|
|
448
|
-
--color-success:
|
|
449
|
-
--color-info:
|
|
450
|
-
--color-warning:
|
|
451
|
-
--color-danger:
|
|
452
|
-
--color-
|
|
453
|
-
--color-
|
|
454
|
-
--color-
|
|
455
|
-
--color-
|
|
470
|
+
--color-slate-5: #fafafa;
|
|
471
|
+
--color-slate-10: #f0f0f0;
|
|
472
|
+
--color-slate-20: #e5e5e5;
|
|
473
|
+
--color-slate-30: #d0d0d0;
|
|
474
|
+
--color-slate-40: #b5b5b5;
|
|
475
|
+
--color-slate-50: #a3a3a3;
|
|
476
|
+
--color-slate-60: #737373;
|
|
477
|
+
--color-slate-70: #3a3a3a;
|
|
478
|
+
--color-slate-80: #2e2f2f;
|
|
479
|
+
--color-slate-90: #262626;
|
|
480
|
+
--color-slate-95: #1f1f1f;
|
|
481
|
+
/* status: cloud-ui's dark values; fills keep white text */
|
|
482
|
+
--color-success: #22c55e;
|
|
483
|
+
--color-info: #3b82f6;
|
|
484
|
+
--color-warning: #f59e0b;
|
|
485
|
+
--color-danger: #f87171;
|
|
486
|
+
--color-pending: #8b5cf6;
|
|
487
|
+
--color-success-hover: rgb(34 197 94 / 0.9);
|
|
488
|
+
--color-info-hover: rgb(59 130 246 / 0.9);
|
|
489
|
+
--color-warning-hover: rgb(245 158 11 / 0.9);
|
|
490
|
+
--color-danger-hover: rgb(248 113 113 / 0.9);
|
|
491
|
+
--color-pending-hover: rgb(139 92 246 / 0.9);
|
|
492
|
+
--color-success-strong: #4ade80;
|
|
493
|
+
--color-info-strong: #93c5fd;
|
|
494
|
+
--color-warning-strong: #fbbf24;
|
|
495
|
+
--color-danger-strong: #fca5a5;
|
|
496
|
+
--color-pending-strong: #c4b5fd;
|
|
497
|
+
/* chart palette: blue lifts for the dark surface; the greys swap so "Other" stays the quieter one */
|
|
498
|
+
--color-chart-2: #3b82f6;
|
|
499
|
+
--color-chart-7: #a3a3a3;
|
|
500
|
+
--color-chart-8: #5c5c5c;
|
|
456
501
|
/* semantic aliases are repeated so a `.dark` subtree re-resolves them */
|
|
457
|
-
--color-heading:
|
|
458
|
-
--color-body:
|
|
459
|
-
--color-label:
|
|
460
|
-
--color-muted:
|
|
461
|
-
--color-link:
|
|
462
|
-
--color-border-light:
|
|
463
|
-
--color-border:
|
|
464
|
-
--color-border-dark:
|
|
465
|
-
--color-sidebar:
|
|
466
|
-
--color-
|
|
467
|
-
--color-surface
|
|
468
|
-
--color-surface-
|
|
469
|
-
--color-
|
|
502
|
+
--color-heading: #fafafa;
|
|
503
|
+
--color-body: #fafafa;
|
|
504
|
+
--color-label: #fafafa;
|
|
505
|
+
--color-muted: #d0d0d0;
|
|
506
|
+
--color-link: #fafafa;
|
|
507
|
+
--color-border-light: #262626;
|
|
508
|
+
--color-border: #2e2f2f;
|
|
509
|
+
--color-border-dark: #3a3a3a;
|
|
510
|
+
--color-sidebar: #171717;
|
|
511
|
+
--color-background: #0a0a0a;
|
|
512
|
+
--color-surface: #171717;
|
|
513
|
+
--color-surface-muted: #1f1f1f;
|
|
514
|
+
--color-surface-sunken: #2c2c2c;
|
|
515
|
+
--color-accent: #2a3138;
|
|
516
|
+
--color-accent-hover: #323b44;
|
|
517
|
+
--color-accent-active: #3a4551;
|
|
518
|
+
--color-ring: hsl(var(--primary-hue) 71% 45%);
|
|
470
519
|
--color-overlay: rgb(0 0 0 / 0.6);
|
|
520
|
+
--color-tooltip: #262626;
|
|
521
|
+
--color-on-tooltip: #f5f5f5;
|
|
471
522
|
--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.3);
|
|
472
|
-
--shadow-sm: 0 1px
|
|
473
|
-
--shadow-md: 0
|
|
474
|
-
--shadow-lg: 0
|
|
475
|
-
--shadow-xl: 0
|
|
476
|
-
--shadow-
|
|
523
|
+
--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.35), 0 1px 2px -1px rgb(0 0 0 / 0.35);
|
|
524
|
+
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);
|
|
525
|
+
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.5), 0 4px 6px -4px rgb(0 0 0 / 0.5);
|
|
526
|
+
--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.55), 0 8px 10px -6px rgb(0 0 0 / 0.55);
|
|
527
|
+
--shadow-card: 0 2px 4px rgb(0 0 0 / 0.3), 0 12px 24px -6px rgb(0 0 0 / 0.5);
|
|
528
|
+
--shadow-button: 0 1px 3px 0 rgb(0 0 0 / 0.35), 0 1px 2px -1px rgb(0 0 0 / 0.35);
|
|
477
529
|
--inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.25);
|
|
478
530
|
}
|
|
479
531
|
|
|
@@ -484,44 +536,56 @@
|
|
|
484
536
|
text-rendering: optimizeLegibility;
|
|
485
537
|
}
|
|
486
538
|
body {
|
|
487
|
-
background-color: var(--color-
|
|
539
|
+
background-color: var(--color-background);
|
|
488
540
|
color: var(--color-body);
|
|
489
541
|
font-family: var(--font-sans);
|
|
490
542
|
font-size: var(--text-base);
|
|
543
|
+
font-weight: 450;
|
|
491
544
|
line-height: var(--text-base--line-height);
|
|
545
|
+
letter-spacing: 0.005em;
|
|
546
|
+
font-optical-sizing: auto;
|
|
547
|
+
}
|
|
548
|
+
h1, h2, h3, h4, h5, h6 {
|
|
549
|
+
color: var(--color-heading);
|
|
550
|
+
font-family: var(--font-heading);
|
|
551
|
+
font-weight: 600;
|
|
552
|
+
line-height: 1.25;
|
|
553
|
+
text-wrap: balance;
|
|
492
554
|
}
|
|
493
|
-
h1
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
555
|
+
h1 { font-size: var(--text-h1); font-weight: 700; letter-spacing: -0.02em; }
|
|
556
|
+
h2 { font-size: var(--text-h2); font-weight: 700; letter-spacing: -0.02em; }
|
|
557
|
+
h3 { font-size: var(--text-h3); letter-spacing: -0.012em; }
|
|
558
|
+
h4 { font-size: var(--text-h4); letter-spacing: -0.012em; }
|
|
559
|
+
h5 { font-size: var(--text-h5); letter-spacing: -0.008em; }
|
|
560
|
+
h6 { font-size: var(--text-h6); letter-spacing: -0.008em; }
|
|
561
|
+
p { text-wrap: pretty; }
|
|
562
|
+
button, input, select, textarea { font-family: inherit; letter-spacing: inherit; }
|
|
500
563
|
code, kbd, pre, samp { font-family: var(--font-mono); font-feature-settings: normal; }
|
|
501
564
|
::selection { background-color: var(--color-primary-90); color: var(--color-primary-10); }
|
|
502
|
-
:focus-visible { outline: 2px solid var(--color-
|
|
565
|
+
:focus-visible { outline: 2px solid var(--color-ring); outline-offset: 2px; }
|
|
503
566
|
}
|
|
504
567
|
|
|
505
568
|
@utility text-code {
|
|
506
569
|
font-family: var(--font-mono);
|
|
507
570
|
font-size: calc(13px * var(--ac-scale));
|
|
508
|
-
letter-spacing:
|
|
571
|
+
letter-spacing: 0;
|
|
509
572
|
color: var(--color-heading);
|
|
510
573
|
}
|
|
511
574
|
|
|
512
|
-
/* The standard focus treatment for form controls: solid primary border
|
|
575
|
+
/* The standard focus treatment for form controls: a solid primary border plus a 2px primary/20 halo. */
|
|
513
576
|
@utility focus-ring {
|
|
514
577
|
outline: none;
|
|
515
578
|
border-color: var(--color-primary);
|
|
516
|
-
box-shadow: 0 0 0
|
|
579
|
+
box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-primary) 20%, transparent);
|
|
517
580
|
}
|
|
518
581
|
|
|
582
|
+
/* Thin scrollbar: a 4px grey thumb, like cloud-ui's custom-scrollbar. */
|
|
519
583
|
@utility ac-scrollbar {
|
|
520
584
|
overflow: auto;
|
|
521
585
|
scrollbar-width: thin;
|
|
522
|
-
scrollbar-color:
|
|
523
|
-
&::-webkit-scrollbar { width:
|
|
524
|
-
&::-webkit-scrollbar-thumb { background-color:
|
|
586
|
+
scrollbar-color: rgb(176 176 176 / 0.55) transparent;
|
|
587
|
+
&::-webkit-scrollbar { width: 4px; height: 4px; }
|
|
588
|
+
&::-webkit-scrollbar-thumb { background-color: #b0b0b0; border-radius: 9999px; }
|
|
525
589
|
&::-webkit-scrollbar-track { background: transparent; }
|
|
526
590
|
}
|
|
527
591
|
|
|
@@ -554,3 +618,58 @@
|
|
|
554
618
|
@media (prefers-reduced-motion: reduce) {
|
|
555
619
|
.ac-progress-indeterminate { animation: none; }
|
|
556
620
|
}
|
|
621
|
+
|
|
622
|
+
/*
|
|
623
|
+
* Charts (the /charts entry). Unovis styles its SVG through --vis-* variables; they're set on chart roots only,
|
|
624
|
+
* so other Unovis charts on the page keep their own look. The --vis-dark-* twins get the same tokens, so
|
|
625
|
+
* Unovis' own dark-theme selectors (html.theme-dark and the like) still resolve to ours.
|
|
626
|
+
*/
|
|
627
|
+
[data-ac-chart] {
|
|
628
|
+
font-variant-numeric: tabular-nums;
|
|
629
|
+
--vis-font-family: var(--font-sans);
|
|
630
|
+
--vis-axis-font-family: var(--font-sans);
|
|
631
|
+
--vis-axis-tick-label-font-size: 12px;
|
|
632
|
+
--vis-axis-tick-label-weight: 400;
|
|
633
|
+
--vis-axis-label-font-size: 12px;
|
|
634
|
+
--vis-axis-label-weight: 500;
|
|
635
|
+
--vis-axis-tick-color: var(--color-border);
|
|
636
|
+
--vis-dark-axis-tick-color: var(--color-border);
|
|
637
|
+
--vis-axis-domain-color: var(--color-border-dark);
|
|
638
|
+
--vis-dark-axis-domain-color: var(--color-border-dark);
|
|
639
|
+
--vis-axis-grid-color: var(--color-border);
|
|
640
|
+
--vis-dark-axis-grid-color: var(--color-border);
|
|
641
|
+
--vis-axis-tick-label-color: var(--color-muted);
|
|
642
|
+
--vis-dark-axis-tick-label-color: var(--color-muted);
|
|
643
|
+
--vis-axis-label-color: var(--color-muted);
|
|
644
|
+
--vis-dark-axis-label-color: var(--color-muted);
|
|
645
|
+
--vis-crosshair-line-stroke-color: var(--color-border-dark);
|
|
646
|
+
--vis-crosshair-circle-stroke-color: var(--color-surface);
|
|
647
|
+
--vis-crosshair-circle-stroke-width: 2px;
|
|
648
|
+
--vis-crosshair-circle-stroke-opacity: 1;
|
|
649
|
+
/* A 1px surface stroke leaves a 2px gap between stacked segments. */
|
|
650
|
+
--vis-stacked-bar-stroke-color: var(--color-surface);
|
|
651
|
+
--vis-dark-stacked-bar-stroke-color: var(--color-surface);
|
|
652
|
+
--vis-stacked-bar-stroke-width: 1px;
|
|
653
|
+
--vis-grouped-bar-hover-stroke-width: 0px;
|
|
654
|
+
--vis-area-fill-opacity: 1;
|
|
655
|
+
--vis-donut-background-color: var(--color-surface-sunken);
|
|
656
|
+
--vis-dark-donut-background-color: var(--color-surface-sunken);
|
|
657
|
+
--vis-donut-segment-stroke-color: var(--color-surface);
|
|
658
|
+
--vis-donut-segment-stroke-width: 2px;
|
|
659
|
+
--vis-donut-central-label-text-color: var(--color-heading);
|
|
660
|
+
--vis-dark-donut-central-label-text-color: var(--color-heading);
|
|
661
|
+
--vis-donut-central-sub-label-text-color: var(--color-muted);
|
|
662
|
+
--vis-dark-donut-central-sub-label-text-color: var(--color-muted);
|
|
663
|
+
--vis-legend-label-color: var(--color-muted);
|
|
664
|
+
--vis-dark-legend-label-color: var(--color-muted);
|
|
665
|
+
--vis-legend-label-font-size: 12px;
|
|
666
|
+
--vis-tooltip-background-color: var(--color-surface);
|
|
667
|
+
--vis-dark-tooltip-background-color: var(--color-surface);
|
|
668
|
+
--vis-tooltip-border-color: var(--color-border);
|
|
669
|
+
--vis-dark-tooltip-border-color: var(--color-border);
|
|
670
|
+
--vis-tooltip-text-color: var(--color-body);
|
|
671
|
+
--vis-dark-tooltip-text-color: var(--color-body);
|
|
672
|
+
--vis-tooltip-border-radius: 10px;
|
|
673
|
+
--vis-tooltip-box-shadow: var(--shadow-lg);
|
|
674
|
+
--vis-tooltip-padding: 10px 12px;
|
|
675
|
+
}
|