@keenmate/pure-css 1.0.0-rc05 → 1.0.0-rc07
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/CHANGELOG.md +113 -0
- package/README.md +13 -42
- package/dist/css/base.css +20 -10
- package/dist/css/pure-css.css +70 -60
- package/dist/css/reboot.css +1 -1
- package/dist/css/scrollbars.css +4 -4
- package/package.json +1 -1
- package/src/scss/_base-css-variables.scss +105 -73
- package/src/scss/_fit-flyout.scss +4 -4
- package/src/scss/_layout-container.scss +3 -3
- package/src/scss/_layout-responsive.scss +1 -1
- package/src/scss/_navbar-elements.scss +11 -11
- package/src/scss/_navbar.scss +2 -2
- package/src/scss/_resize-handle.scss +1 -1
- package/src/scss/_sidebar-states.scss +6 -6
- package/src/scss/_sidebar.scss +31 -23
- package/src/scss/reboot.scss +1 -1
- package/src/scss/scrollbars.scss +4 -4
- package/src/scss/variables/_base.scss +26 -2
- package/src/scss/variables/_colors.scss +15 -9
- package/src/scss/variables/_components.scss +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,119 @@
|
|
|
3
3
|
All notable changes to `@keenmate/pure-css` are documented here. Format based on
|
|
4
4
|
[Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|
5
5
|
|
|
6
|
+
## [1.0.0-rc07] — 2026-09-08 [PUBLISHED]
|
|
7
|
+
|
|
8
|
+
The **shared theming knob** release. Before rc07 the same visual token (a tooltip
|
|
9
|
+
background, an input border, a dropdown surface) was produced *twice and
|
|
10
|
+
independently* — pure-admin's `--pc-*` component tokens were baked compile-time
|
|
11
|
+
literals, while the KeenMate web components read `--base-*` live — so they agreed
|
|
12
|
+
only by coincidence and diverged the instant a theme retuned `--base-*` at
|
|
13
|
+
runtime (every dual-mode theme does exactly this at `.pc-mode-dark`). rc07 makes
|
|
14
|
+
`--base-*` the single runtime knob: override one namespace and pure-admin
|
|
15
|
+
components + the web components re-theme together, in light and dark.
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
|
|
19
|
+
- **Gap `--base-*` tokens the web components already read but pure-css never
|
|
20
|
+
emitted** — so they stop falling through to hardcoded component defaults and
|
|
21
|
+
actually theme: `--base-text-inverted`, `--base-checkbox-border-color`,
|
|
22
|
+
`--base-input-border-color` (+ the `--base-input-border` shorthand),
|
|
23
|
+
`--base-input-clear-color` / `--base-input-clear-bg-hover`, the solid role
|
|
24
|
+
fills `--base-success-bg` / `--base-danger-bg` / `--base-warning-bg`, and
|
|
25
|
+
`--base-rem`.
|
|
26
|
+
|
|
27
|
+
### Changed
|
|
28
|
+
|
|
29
|
+
- **`--pc-*` component tokens now derive from `--base-*` at runtime.** ~40 themed
|
|
30
|
+
`--pc-*` tokens (buttons, cards, inputs, checkbox, input groups, tables, modal,
|
|
31
|
+
tooltip/popover, command palette, multiselect) were rewritten from baked
|
|
32
|
+
`#{$…}` literals to the guiding-rule form `var(--base-x, #{$fallback})`. The
|
|
33
|
+
`#{$fallback}` preserves today's compiled value, so **light-mode output is
|
|
34
|
+
unchanged** — but the token now follows any runtime `--base-*` override, shared
|
|
35
|
+
with the web components.
|
|
36
|
+
- **The app shell surfaces stay compile-time — deliberately not `--base-*`-derived.**
|
|
37
|
+
The navbar/sidebar/footer surface + text tokens (`--pc-navbar-*`,
|
|
38
|
+
`--pc-sidebar-*`, `--pc-footer-*`) are emitted as plain `#{$…}` literals, *not*
|
|
39
|
+
`var(--base-main-bg, …)`. The shell is a distinct brand surface a theme sets on
|
|
40
|
+
its own (e.g. a yellow navbar) independent of the `--base-*` card/page palette;
|
|
41
|
+
since `--base-main-bg` is always emitted, deriving the navbar from it would let
|
|
42
|
+
the base palette win and erase the brand colour. Standalone (`base.css`-only)
|
|
43
|
+
rendering is still covered — the shell CSS itself resolves
|
|
44
|
+
`var(--pc-navbar-bg, var(--base-main-bg))`, so the `--base-*` floor applies only
|
|
45
|
+
when no `--pc-*` is emitted (the rc06 contract), not as a runtime override of it.
|
|
46
|
+
- **Surface-token naming realigned with the `--base-*` model (B5).**
|
|
47
|
+
`--pc-main-bg` is now the **white surface** (`--base-main-bg`), `--pc-subtle-bg`
|
|
48
|
+
the **muted grey** (`--base-subtle-bg`), and `--pc-page-bg` remains the **grey
|
|
49
|
+
canvas**. Previously `--pc-main-bg` *was* the grey canvas and `--pc-subtle-bg`
|
|
50
|
+
*was* white — an inversion vs the `--base-*` vocabulary. pure-css's own shell
|
|
51
|
+
canvas usages (reboot `body`, `.pc-layout`, scrollbars) were repointed
|
|
52
|
+
`--pc-main-bg` → `--pc-page-bg` so the canvas stays grey. **Downstream code
|
|
53
|
+
reading `--pc-main-bg` / `--pc-subtle-bg` must re-check intent** — see
|
|
54
|
+
pure-admin-core rc19, which repoints its component surfaces accordingly.
|
|
55
|
+
- `$base-elevated-bg` default changed from the stray `#f5f5f5` to `$base-page-bg`.
|
|
56
|
+
|
|
57
|
+
### Fixed
|
|
58
|
+
|
|
59
|
+
- **Broken `$`-link:** `$input-border` was a hardcoded `#ced4da` (the comment even
|
|
60
|
+
claimed it came from base) — reconnected to `$base-input-border-color`, so input
|
|
61
|
+
borders finally track the theme.
|
|
62
|
+
- **Semantic surface reconciliation** so pure-admin and the web components resolve
|
|
63
|
+
the *same* base token per surface: card/table headers + striped rows →
|
|
64
|
+
`--base-elevated-bg`, dropdown/popover → `--base-dropdown-bg`, table/multiselect
|
|
65
|
+
hover → `--base-hover-bg`, checkbox border → `--base-checkbox-border-color`.
|
|
66
|
+
- **Sidebar search box alignment + collapsed-rail gating (`_sidebar.scss`).** The
|
|
67
|
+
search input's inline padding was rebalanced to `0 $spacing-base 0 $spacing-sm`
|
|
68
|
+
so its magnifier lines up with the nav-row icons below it (margin `$spacing-sm` +
|
|
69
|
+
padding-left `$spacing-sm` = the `$spacing-base` nav inset) instead of sitting one
|
|
70
|
+
box-margin too far in. The collapsed-rail rules that shed the search frame/field
|
|
71
|
+
down to the submit icon were re-scoped from `.pc-layout__sidebar--icon-collapse`
|
|
72
|
+
to `.sidebar-hidden .pc-layout__sidebar--icon-collapse` — the mode class stays on
|
|
73
|
+
the element while the rail is expanded, so the unscoped rules were stripping the
|
|
74
|
+
search frame in the expanded state too.
|
|
75
|
+
|
|
76
|
+
## [1.0.0-rc06] — 2026-08-30
|
|
77
|
+
|
|
78
|
+
### Fixed
|
|
79
|
+
|
|
80
|
+
- **The app shell now renders standalone — component `--pc-*` tokens fall back to
|
|
81
|
+
`--base-*`.** rc05 relocated the shell into the foundation, but its CSS
|
|
82
|
+
hard-referenced component tokens (`--pc-navbar-bg`, `--pc-sidebar-*`,
|
|
83
|
+
`--pc-footer-*`, `--pc-card-bg`, `--pc-input-bg`) that pure-css does **not**
|
|
84
|
+
emit — those are pure-admin's `output-pc-component-variables` contract. So a
|
|
85
|
+
consumer linking `base.css` / `pure-css.css` alone (keen-docs hit this) got an
|
|
86
|
+
unstyled navbar/sidebar. Every such reference now carries a `--base-*` fallback
|
|
87
|
+
traced from the token's own derivation: `var(--pc-navbar-bg, var(--base-main-bg))`,
|
|
88
|
+
`var(--pc-sidebar-bg, var(--base-page-bg))`, navbar/sidebar text →
|
|
89
|
+
`--base-text-color-1/2`, borders → `--base-border-color`, submenu surfaces →
|
|
90
|
+
`--base-subtle-bg`, input → `--base-input-bg`. This makes `--pc-*` an *optional*
|
|
91
|
+
override layer over a guaranteed `--base-*` floor — link only the base vars and
|
|
92
|
+
the shell just works; set `--pc-navbar-bg` to tune the bar independently of the
|
|
93
|
+
page. 40 references across the eight shell partials.
|
|
94
|
+
- **Dangling token references in `_fit-flyout.scss`.** The fit-flyout trigger
|
|
95
|
+
referenced `--pc-accent-color` (defined nowhere — the token is `--pc-accent`)
|
|
96
|
+
with no fallback, so its focus outline was inert; and `--pc-hover-bg` (also
|
|
97
|
+
undefined) with only an rgba literal. Repointed to
|
|
98
|
+
`var(--pc-accent, var(--base-accent-color))` and
|
|
99
|
+
`var(--pc-hover-bg, var(--base-hover-bg, rgba(…)))`.
|
|
100
|
+
|
|
101
|
+
### Changed
|
|
102
|
+
|
|
103
|
+
- **Unified the `--pc-border-radius*` scale with the `--base-border-radius-*`
|
|
104
|
+
contract the components already use.** pure-css shipped two disconnected radius
|
|
105
|
+
systems: `--base-border-radius-sm/md/lg` (the unitless rem-multipliers
|
|
106
|
+
`0.4/0.6/0.8` every web/svelte component reads — e.g. web-multiselect's
|
|
107
|
+
`calc(var(--base-border-radius-md) * --ms-rem)`), and its OWN
|
|
108
|
+
`--pc-border-radius-sm/base/lg` as hardcoded `2px/4px/8px` literals disconnected
|
|
109
|
+
from the base layer. On one themed page a `<keen-web-multiselect>` and a pure-css
|
|
110
|
+
`.rounded` element rounded differently, and a runtime `--base-border-radius-*`
|
|
111
|
+
override re-rounded the components but not pure-css's own elements. The three
|
|
112
|
+
`--pc-border-radius*` tokens now derive from the base contract —
|
|
113
|
+
`calc(var(--base-border-radius-{sm,md,lg}, <default>) * 1rem)` (unsuffixed
|
|
114
|
+
`--pc-border-radius` = the `-md` mid step) — mirroring how `--pc-border-color`
|
|
115
|
+
already tracked `--base-border-color`. **Rendered radii change** to match the
|
|
116
|
+
ecosystem: `-sm` 2px → 4px, mid 4px → 6px, `-lg` 8px (unchanged). Overriding
|
|
117
|
+
`--base-border-radius-*` now re-rounds pure-css and the components together.
|
|
118
|
+
|
|
6
119
|
## [1.0.0-rc05] — 2026-08-27 [PUBLISHED]
|
|
7
120
|
|
|
8
121
|
### Added
|
package/README.md
CHANGED
|
@@ -4,48 +4,19 @@ The KeenMate CSS **foundation** — the `--base-*` theming contract, the flexbox
|
|
|
4
4
|
utility classes — extracted from [`@keenmate/pure-admin-core`](https://github.com/KeenMate/pure-admin)
|
|
5
5
|
so it can be consumed on its own.
|
|
6
6
|
|
|
7
|
-
## What's New in 1.0.0-
|
|
8
|
-
|
|
9
|
-
- **
|
|
10
|
-
- **
|
|
11
|
-
- **
|
|
12
|
-
- **
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
emitted by the new `output-pc-component-variables` mixin. If you author themes
|
|
21
|
-
or call the emit mixins, add `@include output-pc-component-variables;` after
|
|
22
|
-
`output-pc-css-variables`. Consumers of compiled CSS are unaffected.
|
|
23
|
-
- **The foundation namespace is fully de-branded from `pa` to `pc` (BREAKING).**
|
|
24
|
-
pure-css was carved out of pure-admin, so it still carried pure-admin's `pa`
|
|
25
|
-
brand in its public surface. That's gone:
|
|
26
|
-
- **Grid + mode classes:** `.pa-row` / `.pa-col*` / `.pa-offset*` / `.pa-cq` /
|
|
27
|
-
`.pa-hide*` / `.pa-show*` → `.pc-*`; `.pa-mode-light` / `.pa-mode-dark` →
|
|
28
|
-
`.pc-mode-*`.
|
|
29
|
-
- **Every emitted CSS variable:** the whole `--pa-*` runtime surface (~210
|
|
30
|
-
custom properties) → `--pc-*` (`--pa-accent` → `--pc-accent`, `--pa-card-bg`
|
|
31
|
-
→ `--pc-card-bg`, `--pa-color-1..9` → `--pc-color-1..9`, …). `--base-*`
|
|
32
|
-
(web-component bridge) and `--page-loader-*` are unchanged.
|
|
33
|
-
- **The emit mixins:** `output-pa-css-variables` → `output-pc-css-variables`,
|
|
34
|
-
`output-pa-alert-variables-light/dark` → `output-pc-alert-variables-*`.
|
|
35
|
-
Consumers migrate markup, `var()` reads, inline `style="--pa-…"`, and theme
|
|
36
|
-
`:root` blocks in lockstep — a boundary-aware find/replace of the string
|
|
37
|
-
`--pa-` → `--pc-` (safe: it can't touch `--base-*`, `--page-loader-*`, or the
|
|
38
|
-
`.pa-color-{name}` variant **class**).
|
|
39
|
-
- **Sizing utilities consolidated into the foundation.** The universal
|
|
40
|
-
viewport-height utilities (`h-full` / `h-screen` / `min-h-full` /
|
|
41
|
-
`min-h-screen` / `max-h-full` / `max-h-screen`) and the Tailwind-style flex
|
|
42
|
-
shorthands (`flex-1` / `flex-auto` / `flex-initial` / `flex-none` /
|
|
43
|
-
`flex-grow` / `flex-shrink`) now ship from pure-css, so a standalone page gets
|
|
44
|
-
the complete set without borrowing anything from pure-admin. pure-admin's
|
|
45
|
-
duplicate rem-height `h-Nx` / `min-h-Nx` / `max-h-Nx` classes are retired in
|
|
46
|
-
favour of the foundation's `hr-` / `wr-` naming (`r` = rem).
|
|
47
|
-
- **Complete form-spacing contract as runtime `--pc-*` variables** and the
|
|
48
|
-
`$form-scale` → `$form-gap` rename (see CHANGELOG).
|
|
7
|
+
## What's New in 1.0.0-rc07
|
|
8
|
+
|
|
9
|
+
- **Theming — one runtime knob re-themes pure-admin components and the web components together** — before rc07 the same visual token was produced twice and independently: pure-admin's `--pc-*` component tokens were baked as compile-time literals, while the KeenMate web components read `--base-*` live, so they agreed only by coincidence and diverged the instant a theme retuned `--base-*` at runtime (every dark-mode toggle does exactly this at `.pc-mode-dark`). ~40 themed `--pc-*` tokens in `_base-css-variables.scss` (buttons, cards, inputs, checkbox, input groups, tables, modal, tooltip/popover, command palette, multiselect) were rewritten from `#{$…}` literals to the guiding-rule form `var(--base-x, #{$fallback})`. The `#{$fallback}` preserves today's compiled value so light-mode output is byte-for-byte unchanged, but each token now follows any runtime `--base-*` override — the same knob the web components already read.
|
|
10
|
+
- **App shell — navbar/sidebar/footer surfaces stay a distinct brand colour, deliberately not `--base-*`-derived** — the shell's surface + text tokens (`--pc-navbar-*`, `--pc-sidebar-*`, `--pc-footer-*`) are emitted as plain `#{$…}` literals, *not* `var(--base-main-bg, …)`. A theme sets the shell's brand (e.g. a yellow navbar) independently of the `--base-*` card/page palette, and since `--base-main-bg` is always emitted, deriving the navbar from it would let the base palette win and erase the brand. Standalone (`base.css`-only) rendering still works because the shell CSS resolves `var(--pc-navbar-bg, var(--base-main-bg))` — the `--base-*` floor applies only when no `--pc-*` is emitted (the rc06 contract), never as a runtime override of it.
|
|
11
|
+
- **Theming — gap `--base-*` tokens the web components read but pure-css never emitted** — several `--base-*` vars the components already consumed were falling through to hardcoded component defaults because pure-css didn't emit them, so they couldn't be themed. rc07 emits them: `--base-text-inverted`, `--base-checkbox-border-color`, `--base-input-border-color` (+ the `--base-input-border` shorthand), `--base-input-clear-color` / `--base-input-clear-bg-hover`, the solid role fills `--base-success-bg` / `--base-danger-bg` / `--base-warning-bg`, and `--base-rem`.
|
|
12
|
+
- **Surfaces — `--pc-main-bg` / `--pc-subtle-bg` naming realigned with the `--base-*` model** — `--pc-main-bg` is now the **white surface** and `--pc-subtle-bg` the **muted grey**, matching `--base-main-bg` / `--base-subtle-bg`; previously the two were inverted (`--pc-main-bg` *was* the grey canvas). pure-css's own canvas usages (reboot `body`, `.pc-layout`, scrollbars) were repointed `--pc-main-bg` → `--pc-page-bg` so the page canvas stays grey. **Downstream code reading `--pc-main-bg` / `--pc-subtle-bg` must re-check intent** — see pure-admin-core rc19.
|
|
13
|
+
- **Fixed — input borders finally track the theme** — `$input-border` was a hardcoded `#ced4da` (its own comment wrongly claimed it came from base); it's reconnected to `$base-input-border-color`. Also a semantic surface reconciliation so pure-admin and the web components resolve the *same* base token per surface (card/table headers + striped rows → `--base-elevated-bg`, dropdown/popover → `--base-dropdown-bg`, hover → `--base-hover-bg`).
|
|
14
|
+
- **Fixed — sidebar search box alignment + collapsed-rail gating** — the search input's inline padding was rebalanced (`0 $spacing-base 0 $spacing-sm`) so its magnifier lines up with the nav-row icons below it, and the collapsed-rail rules that strip the search down to the submit icon were re-scoped from `.pc-layout__sidebar--icon-collapse` to `.sidebar-hidden .pc-layout__sidebar--icon-collapse` — the mode class stays on the element while the rail is expanded, so the unscoped rules were stripping the search frame in the expanded state too.
|
|
15
|
+
|
|
16
|
+
## What's New in 1.0.0-rc06
|
|
17
|
+
|
|
18
|
+
- **The app shell renders standalone — no `--pc-*` component setup required** — rc05 moved the shell into the foundation, but its CSS referenced component tokens (`--pc-navbar-bg`, `--pc-sidebar-*`, `--pc-card-bg`, …) that pure-css doesn't emit, so linking `base.css` / `pure-css.css` alone gave an unstyled navbar/sidebar (keen-docs hit this). Every such reference now falls back to a `--base-*` var that pure-css *does* emit — `var(--pc-navbar-bg, var(--base-main-bg))` and friends, 40 in all, each traced from the token's real derivation. That's a clean two-tier contract: link the base vars and the shell just works out of the box; set the `--pc-*` token only when you want to fine-tune a piece independently. Also fixed two dangling refs in the fit flyout (`--pc-accent-color` → `--pc-accent`, plus a `--base-hover-bg` tier for `--pc-hover-bg`).
|
|
19
|
+
- **One border-radius scale across the whole ecosystem** — pure-css shipped two disconnected radius systems: the `--base-border-radius-sm/md/lg` multipliers every web/svelte component reads (e.g. web-multiselect), and its own `--pc-border-radius*` as hardcoded 2/4/8px literals that ignored the base layer — so a `<keen-web-multiselect>` and a pure-css `.rounded` element rounded differently on the same theme, and a runtime `--base-border-radius-*` override moved the components but not pure-css's own elements. The `--pc-border-radius*` tokens now derive from `--base-border-radius-*` (`calc(var(--base-border-radius-md, 0.6) * 1rem)`), so radii match the components and one override re-rounds everything together. Rendered corners change slightly: small 2px→4px, medium 4px→6px, large unchanged.
|
|
49
20
|
|
|
50
21
|
## Why
|
|
51
22
|
|
package/dist/css/base.css
CHANGED
|
@@ -28,16 +28,21 @@
|
|
|
28
28
|
--base-hover-bg: #e9ecef;
|
|
29
29
|
--base-active-bg: rgb(85.5830753354%, 87.5490196078%, 89.5149638803%);
|
|
30
30
|
--base-disabled-bg: #e9ecef;
|
|
31
|
-
--base-elevated-bg: #
|
|
31
|
+
--base-elevated-bg: #f8f9fa;
|
|
32
|
+
--base-text-inverted: #ffffff;
|
|
32
33
|
--base-border-color: #e1e5e9;
|
|
33
34
|
--base-border: 1px solid #e1e5e9;
|
|
35
|
+
--base-checkbox-border-color: #e1e5e9;
|
|
34
36
|
--base-input-bg: #ffffff;
|
|
35
37
|
--base-input-color: #495057;
|
|
36
38
|
--base-input-border: 1px solid #ced4da;
|
|
39
|
+
--base-input-border-color: #ced4da;
|
|
37
40
|
--base-input-border-hover: 1px solid #b8bfc6;
|
|
38
41
|
--base-input-border-focus: 1px solid #007bff;
|
|
39
42
|
--base-input-placeholder-color: #a3b1bf;
|
|
40
43
|
--base-input-bg-disabled: rgba(255, 255, 255, 0.5);
|
|
44
|
+
--base-input-clear-color: #7a8a99;
|
|
45
|
+
--base-input-clear-bg-hover: #e9ecef;
|
|
41
46
|
--base-input-size-xs-height: 3.1;
|
|
42
47
|
--base-input-size-sm-height: 3.3;
|
|
43
48
|
--base-input-size-md-height: 3.5;
|
|
@@ -48,7 +53,9 @@
|
|
|
48
53
|
--base-dropdown-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
|
|
49
54
|
--base-tooltip-bg: #2c3e50;
|
|
50
55
|
--base-tooltip-text-color: #ffffff;
|
|
56
|
+
--base-tooltip-color: #ffffff;
|
|
51
57
|
--base-success-color: #22c55e;
|
|
58
|
+
--base-success-bg: #22c55e;
|
|
52
59
|
--base-success-color-hover: rgb(10.3896103896%, 60.1986249045%, 28.7242169595%);
|
|
53
60
|
--base-success-bg-light: rgba(34, 197, 94, 0.1);
|
|
54
61
|
--base-success-bg-subtle: rgba(34, 197, 94, 0.08);
|
|
@@ -57,6 +64,7 @@
|
|
|
57
64
|
--base-success-text-light: #d4edda;
|
|
58
65
|
--base-text-on-success: #ffffff;
|
|
59
66
|
--base-danger-color: #ef4444;
|
|
67
|
+
--base-danger-bg: #ef4444;
|
|
60
68
|
--base-danger-color-hover: rgb(92.1491355163%, 8.2430213465%, 8.2430213465%);
|
|
61
69
|
--base-danger-bg-light: rgba(239, 68, 68, 0.1);
|
|
62
70
|
--base-danger-bg-subtle: rgba(239, 68, 68, 0.08);
|
|
@@ -65,6 +73,7 @@
|
|
|
65
73
|
--base-danger-text-light: #f8d7da;
|
|
66
74
|
--base-text-on-danger: #ffffff;
|
|
67
75
|
--base-warning-color: #f97316;
|
|
76
|
+
--base-warning-bg: #f97316;
|
|
68
77
|
--base-warning-color-hover: rgb(84.1086225285%, 35.7371400443%, 2.1658872754%);
|
|
69
78
|
--base-warning-bg-light: rgba(249, 115, 22, 0.1);
|
|
70
79
|
--base-warning-bg-subtle: rgba(249, 115, 22, 0.08);
|
|
@@ -103,13 +112,14 @@
|
|
|
103
112
|
--base-border-radius-sm: 0.4;
|
|
104
113
|
--base-border-radius-md: 0.6;
|
|
105
114
|
--base-border-radius-lg: 0.8;
|
|
115
|
+
--base-rem: 1rem;
|
|
106
116
|
color-scheme: light;
|
|
107
|
-
--pc-main-bg: #
|
|
108
|
-
--pc-page-bg: #f8f9fa;
|
|
109
|
-
--pc-subtle-bg: #
|
|
110
|
-
--pc-text-color-1: #2c3e50;
|
|
111
|
-
--pc-text-color-2: #6c757d;
|
|
112
|
-
--pc-accent: #007bff;
|
|
117
|
+
--pc-main-bg: #ffffff;
|
|
118
|
+
--pc-page-bg: var(--base-page-bg, #f8f9fa);
|
|
119
|
+
--pc-subtle-bg: #e9ecef;
|
|
120
|
+
--pc-text-color-1: var(--base-text-color-1, #2c3e50);
|
|
121
|
+
--pc-text-color-2: var(--base-text-color-2, #6c757d);
|
|
122
|
+
--pc-accent: var(--base-accent-color, #007bff);
|
|
113
123
|
--pc-accent-hover: rgba(0, 123, 255, 0.12);
|
|
114
124
|
--pc-accent-light: color-mix(in srgb, var(--pc-accent) 5%, transparent);
|
|
115
125
|
--pc-link-color: var(--pc-accent);
|
|
@@ -142,7 +152,7 @@
|
|
|
142
152
|
--pc-color-7-text: #ffffff;
|
|
143
153
|
--pc-color-8-text: #ffffff;
|
|
144
154
|
--pc-color-9-text: #ffffff;
|
|
145
|
-
--pc-border-radius-sm:
|
|
146
|
-
--pc-border-radius:
|
|
147
|
-
--pc-border-radius-lg:
|
|
155
|
+
--pc-border-radius-sm: calc(var(--base-border-radius-sm, 0.4) * 1rem);
|
|
156
|
+
--pc-border-radius: calc(var(--base-border-radius-md, 0.6) * 1rem);
|
|
157
|
+
--pc-border-radius-lg: calc(var(--base-border-radius-lg, 0.8) * 1rem);
|
|
148
158
|
}
|