@memobit/themes 2.1.0 → 2.2.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/dist/authoredThemes.d.ts +45 -0
- package/dist/authoredThemes.js +277 -0
- package/dist/themeConfig.js +16 -95
- package/dist/themes/cookbook-slate.css +83 -0
- package/dist/themes/cookbook-terracotta.css +83 -0
- package/dist/themes/garage-night-drive.css +83 -0
- package/dist/themes/garage-redline.css +83 -0
- package/dist/themes/garage-workshop.css +83 -0
- package/dist/themes/hub-deep-water.css +83 -0
- package/dist/themes/hub-shallows.css +83 -0
- package/dist/themes/impulse-pause.css +83 -0
- package/dist/themes/impulse-still-water.css +83 -0
- package/dist/themes/nutritrack-fresh-market.css +83 -0
- package/dist/themes/nutritrack-verdant.css +83 -0
- package/dist/themes/pulse-ivory.css +83 -0
- package/dist/themes/pulse-night-chart.css +83 -0
- package/dist/themes/seeds-blossom.css +83 -0
- package/dist/themes/seeds-nightlight.css +83 -0
- package/dist/themes.css +1283 -23
- package/package.json +1 -1
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
[data-theme='hub-deep-water']{color-scheme:dark;--font-body:'Inter', system-ui, sans-serif;--font-display:'JetBrains Mono', ui-monospace, monospace;--font-mono:ui-monospace, SFMono-Regular, 'JetBrains Mono', Menlo, Consolas, monospace;--display-style:normal;--display-weight:600;--display-size:var(--font-size-md);--display-transform:none;--display-tracking:-0.01em;--label-weight:500;--label-transform:none;--label-tracking:normal;--header-weight:500;--canvas-layers:radial-gradient(60% 50% at 100% 0%, rgba(25, 205, 230, 0.12) 0%, transparent 65%), radial-gradient(50% 45% at 0% 100%, rgba(117, 139, 163, 0.1) 0%, transparent 65%), linear-gradient(155deg, #0d1628 0%, #070b15 55%, #0a1020 100%);--surface-canvas:#0a0e1a;--surface-card:#121a27;--surface-raised:#0e1520;--surface-raised-alt:#0f1621;--surface-overlay:#162131;--button-fill:#1a2535;--surface-overlay-card:#111926;--surface-sunken:#1c2838;--control-hover:#1a2637;--surface-hover:color-mix(in oklab, #19cde6 8%, transparent);--surface-stripe:#101824;--rating-empty:color-mix(in oklab, #1c2838 85%, #ffffff);--surface-selected:color-mix(in oklab, #19cde6 18%, transparent);--surface-blur:none;--text-strong:#ffffff;--text-default:#e6edf5;--text-soft:#c3cfdc;--text-muted:#8ea2b8;--text-subtle:#6c8199;--text-link:#4fd8ec;--text-link-hover:#9becf8;--border-subtle:rgba(142, 162, 184, 0.14);--border-default:rgba(142, 162, 184, 0.2);--border-strong:rgba(142, 162, 184, 0.2);--border-card:rgba(142, 162, 184, 0.14);--border-card-hover:rgba(25, 205, 230, 0.5);--field-bg:#0e1520;--field-bg-focus:#132031;--field-bg-disabled:color-mix(in oklab, #0e1520 94%, #ffffff);--field-fg:#e6edf5;--field-border:rgba(142, 162, 184, 0.24);--field-border-hover:#19cde6;--field-border-focus:#19cde6;--field-placeholder:#6c8199;--field-label:#8ea2b8;--field-ring:color-mix(in oklab, #19cde6 24%, transparent);--tone-neutral-solid:#ffffff;--tone-neutral-solid-hover:color-mix(in oklab, #ffffff 70%, #e6edf5);--tone-neutral-on-solid:#ffffff;--tone-neutral-soft:#1a2637;--tone-neutral-soft-hover:color-mix(in oklab, #1a2637 92%, #ffffff);--tone-neutral-on-soft:#ffffff;--tone-neutral-border:rgba(142, 162, 184, 0.2);--tone-neutral-text:#c3cfdc;--tone-accent-solid:#0e7490;--tone-accent-mark:#19cde6;--tone-accent-solid-hover:#0b86a5;--tone-accent-on-solid:#ffffff;--tone-accent-soft:color-mix(in oklab, #19cde6 16%, transparent);--tone-accent-soft-hover:color-mix(in oklab, #19cde6 24%, transparent);--tone-accent-on-soft:#4fd8ec;--tone-accent-border:color-mix(in oklab, #19cde6 40%, transparent);--tone-accent-text:#4fd8ec;--tone-success-solid:#15803d;--tone-success-mark:#22c55e;--tone-success-solid-hover:#17924a;--tone-success-on-solid:#ffffff;--tone-success-soft:color-mix(in oklab, #22c55e 16%, transparent);--tone-success-soft-hover:color-mix(in oklab, #22c55e 24%, transparent);--tone-success-on-soft:#4ade80;--tone-success-border:color-mix(in oklab, #22c55e 40%, transparent);--tone-success-text:#4ade80;--tone-warning-solid:#a16207;--tone-warning-mark:#f59e0b;--tone-warning-solid-hover:#b56f0a;--tone-warning-on-solid:#ffffff;--tone-warning-soft:color-mix(in oklab, #f59e0b 16%, transparent);--tone-warning-soft-hover:color-mix(in oklab, #f59e0b 24%, transparent);--tone-warning-on-soft:#fbbf24;--tone-warning-border:color-mix(in oklab, #f59e0b 40%, transparent);--tone-warning-text:#fbbf24;--tone-danger-solid:#b91c1c;--tone-danger-mark:#ef4444;--tone-danger-solid-hover:#cf2626;--tone-danger-on-solid:#ffffff;--tone-danger-soft:color-mix(in oklab, #ef4444 16%, transparent);--tone-danger-soft-hover:color-mix(in oklab, #ef4444 24%, transparent);--tone-danger-on-soft:#f87171;--tone-danger-border:color-mix(in oklab, #ef4444 40%, transparent);--tone-danger-text:#f87171;--accent-glow:#75e1f8;--selected-bg:var(--tone-accent-soft);--selected-bg-hover:var(--tone-accent-soft-hover);--selected-fg:var(--tone-accent-on-soft);--selected-border:var(--tone-accent-border);--selected-solid:var(--tone-accent-solid);--selected-solid-fg:var(--tone-accent-on-solid);--shadow-color:color-mix(in oklab, #000 45%, transparent);--shadow-color-strong:color-mix(in oklab, #000 62%, transparent);--shadow-sm:0 1px 0 rgba(142, 162, 184, 0.05) inset, 0 2px 8px rgba(0, 0, 0, 0.4);--shadow-md:0 12px 30px -14px rgba(0, 0, 0, 0.7);--shadow-lg:0 28px 70px rgba(0, 0, 0, 0.7);--scrim:rgba(10, 14, 26, 0.8);--body-background:var(--canvas-layers), var(--surface-canvas);--body-background-base:var(--surface-canvas);--body-background-wash:var(--canvas-layers), var(--surface-canvas);--body-background-glow:none;--body-color:var(--text-default);--body-color-accent:var(--text-strong);--body-color-muted:var(--text-muted);--body-title-color:var(--text-strong);--body-sub-title-color:var(--text-soft);--body-accent-color:var(--tone-accent-text);--body-danger-color:var(--tone-danger-text);--backdrop-color:var(--scrim);--box-shadow:var(--shadow-color);--text-shadow:var(--shadow-color);--border-color:var(--border-strong);--delimiter-color:var(--border-subtle);--links-color:var(--text-link);--links-hover-color:var(--text-link-hover);--font-family:var(--font-body);--font-family-sans:var(--font-body);--font-family-display:var(--font-display);--font-family-mono:var(--font-mono);--header-background-color:var(--surface-raised);--header-border-bottom-color:var(--border-subtle);--header-color:var(--text-strong);--header-font-weight:var(--header-weight);--button-default-background-color:var(--button-fill);--button-default-border-color:var(--border-default);--button-default-color:var(--text-default);--button-default-hover-background-color:var(--control-hover);--button-default-hover-border-color:var(--field-border-hover);--button-default-hover-color:var(--text-strong);--button-ghost-background-color:transparent;--button-ghost-border-color:transparent;--button-ghost-color:var(--text-soft);--button-ghost-hover-background-color:var(--control-hover);--button-ghost-hover-border-color:transparent;--button-ghost-hover-color:var(--text-strong);--button-plain-color:var(--text-soft);--button-plain-hover-color:var(--text-strong);--button-info-background-color:var(--tone-accent-solid);--button-info-border-color:var(--tone-accent-mark);--button-info-color:var(--tone-accent-on-solid);--button-info-hover-background-color:var(--tone-accent-solid-hover);--button-info-hover-border-color:var(--tone-accent-mark);--button-info-hover-color:var(--tone-accent-on-solid);--toast-info-background-color:#0e7490;--toast-info-border-color:color-mix(in oklab, #0e7490 75%, #ffffff);--toast-info-color:#ffffff;--progress-info-bar-border-color:var(--tone-accent-mark);--progress-info-bar-fill-color:var(--tone-accent-mark);--rating-color-info:var(--tone-accent-mark);--card-tint-info-background:var(--tone-accent-soft);--button-success-background-color:var(--tone-success-solid);--button-success-border-color:var(--tone-success-mark);--button-success-color:var(--tone-success-on-solid);--button-success-hover-background-color:var(--tone-success-solid-hover);--button-success-hover-border-color:var(--tone-success-mark);--button-success-hover-color:var(--tone-success-on-solid);--toast-success-background-color:#15803d;--toast-success-border-color:color-mix(in oklab, #15803d 75%, #ffffff);--toast-success-color:#ffffff;--progress-success-bar-border-color:var(--tone-success-mark);--progress-success-bar-fill-color:var(--tone-success-mark);--rating-color-success:var(--tone-success-mark);--card-tint-success-background:var(--tone-success-soft);--button-warning-background-color:var(--tone-warning-solid);--button-warning-border-color:var(--tone-warning-mark);--button-warning-color:var(--tone-warning-on-solid);--button-warning-hover-background-color:var(--tone-warning-solid-hover);--button-warning-hover-border-color:var(--tone-warning-mark);--button-warning-hover-color:var(--tone-warning-on-solid);--toast-warning-background-color:#a16207;--toast-warning-border-color:color-mix(in oklab, #a16207 75%, #ffffff);--toast-warning-color:#ffffff;--progress-warning-bar-border-color:var(--tone-warning-mark);--progress-warning-bar-fill-color:var(--tone-warning-mark);--rating-color-warning:var(--tone-warning-mark);--card-tint-warning-background:var(--tone-warning-soft);--button-danger-background-color:var(--tone-danger-solid);--button-danger-border-color:var(--tone-danger-mark);--button-danger-color:var(--tone-danger-on-solid);--button-danger-hover-background-color:var(--tone-danger-solid-hover);--button-danger-hover-border-color:var(--tone-danger-mark);--button-danger-hover-color:var(--tone-danger-on-solid);--toast-danger-background-color:#b91c1c;--toast-danger-border-color:color-mix(in oklab, #b91c1c 75%, #ffffff);--toast-danger-color:#ffffff;--progress-danger-bar-border-color:var(--tone-danger-mark);--progress-danger-bar-fill-color:var(--tone-danger-mark);--rating-color-danger:var(--tone-danger-mark);--card-tint-danger-background:var(--tone-danger-soft);--progress-bar-background-color:var(--surface-sunken);--progress-bar-color:var(--text-default);--progress-default-bar-border-color:var(--border-strong);--progress-default-bar-fill-color:var(--text-muted);--rating-empty-color:var(--rating-empty);--rating-empty-label-color:var(--text-muted);--rating-half-rate-empty-color:var(--rating-empty);--card-tint-default-background:var(--surface-raised-alt);--card-accent-color:var(--tone-accent-text);--card-backdrop-filter:var(--surface-blur);--card-background-accent-color:var(--surface-raised-alt);--card-background-color:var(--surface-card);--card-border-accent-color:var(--tone-accent-mark);--card-border-color:var(--border-card);--card-box-shadow:var(--shadow-md);--card-color:var(--text-default);--card-footer-background-color:var(--surface-raised-alt);--card-footer-color:var(--text-soft);--card-hover-border-color:var(--border-card-hover);--card-surface-box-shadow:var(--shadow-sm);--card-title-color:var(--text-strong);--card-title-font-family:var(--font-display);--card-title-font-size:var(--display-size);--card-title-font-style:var(--display-style);--card-title-font-weight:var(--display-weight);--card-title-letter-spacing:var(--display-tracking);--card-title-text-transform:var(--display-transform);--modal-backdrop-filter:var(--surface-blur);--modal-background-color:var(--surface-overlay-card);--modal-body-color:var(--text-default);--modal-border-color:var(--border-card);--modal-box-shadow:var(--shadow-lg);--modal-box-shadow-hover:var(--shadow-lg);--modal-color:var(--text-default);--modal-footer-background-color:var(--surface-raised-alt);--modal-header-background-color:var(--surface-raised-alt);--modal-header-color:var(--text-strong);--modal-surface-box-shadow:var(--shadow-lg);--modal-title-color:var(--text-strong);--modal-title-font-family:var(--font-body);--modal-title-font-size:var(--font-size-lg);--modal-title-font-style:normal;--modal-title-font-weight:600;--modal-title-letter-spacing:normal;--modal-title-text-transform:none;--drawer-background-color:var(--surface-overlay-card);--drawer-header-background-color:var(--surface-raised-alt);--drawer-border-color:var(--border-card);--drawer-shadow:var(--shadow-lg);--form-control-background-color:var(--field-bg);--form-control-border-color:var(--field-border);--form-control-color:var(--field-fg);--form-control-focus-background-color:var(--field-bg-focus);--form-control-focus-border-color:var(--field-border-focus);--form-control-focus-color:var(--field-fg);--form-control-focus-ring:var(--field-ring);--form-control-error-background-color:color-mix(in oklab, var(--tone-danger-solid) 6%, var(--field-bg));--form-control-error-border-color:var(--tone-danger-mark);--form-control-error-color:var(--tone-danger-text);--form-control-success-background-color:color-mix(in oklab, var(--tone-success-solid) 7%, var(--field-bg));--form-control-success-border-color:var(--tone-success-mark);--form-control-success-color:var(--tone-success-text);--form-control-font-family:var(--font-body);--form-control-label-color:var(--field-label);--form-control-label-font-size:var(--font-size-xs);--form-control-label-font-weight:var(--label-weight);--form-control-label-letter-spacing:var(--label-tracking);--form-control-label-text-transform:var(--label-transform);--form-control-placeholder-color:var(--field-placeholder);--form-control-selection-background-color:var(--selected-solid);--form-control-selection-border-color:var(--selected-solid);--form-control-selection-color:var(--selected-solid-fg);--form-control-selection-label-color:var(--text-default);--datepicker-input-background-color:var(--field-bg);--dropdown-border-color:var(--field-border);--dropdown-header-background-color:var(--field-bg);--dropdown-header-border-focus-color:var(--field-border-focus);--dropdown-header-color:var(--field-fg);--dropdown-options-background-color:var(--surface-overlay);--dropdown-options-color:var(--text-default);--dropdown-options-hover-background-color:var(--surface-hover);--dropdown-options-hover-color:var(--text-strong);--dropdown-options-selected-background-color:var(--surface-selected);--dropdown-options-selected-color:var(--text-strong);--dropdown-action-background-color:var(--surface-raised-alt);--dropdown-action-color:var(--text-link);--dropdown-action-hover-background-color:var(--surface-hover);--dropdown-action-hover-color:var(--text-link-hover);--dropdown-chips-background-color:var(--selected-bg);--dropdown-chips-border-color:var(--selected-border);--dropdown-chips-color:var(--selected-fg);--dropdown-chips-hover-background-color:var(--selected-bg-hover);--slider-track-background-color:var(--surface-sunken);--slider-track-border-color:var(--field-border);--slider-track-hover-background-color:var(--control-hover);--slider-track-hover-border-color:var(--field-border-hover);--slider-thumb-background-color:var(--tone-accent-mark);--slider-thumb-border-color:var(--tone-accent-mark);--slider-thumb-hover-background-color:var(--tone-accent-solid-hover);--slider-thumb-hover-border-color:var(--tone-accent-solid-hover);--calendar-background-color:var(--surface-overlay);--calendar-border-color:var(--border-default);--calendar-day-color:var(--text-soft);--calendar-day-disabled-color:var(--text-subtle);--calendar-day-hover-background-color:var(--control-hover);--calendar-day-selected-background-color:var(--tone-accent-solid);--calendar-day-selected-color:var(--tone-accent-on-solid);--calendar-day-today-border-color:var(--tone-accent-mark);--calendar-day-weekend-color:var(--text-muted);--calendar-header-background-color:var(--surface-raised-alt);--calendar-header-color:var(--text-strong);--chip-hover-background-color:var(--surface-hover);--chip-hover-border-color:var(--border-strong);--chip-hover-color:var(--text-strong);--chip-selected-background-color:var(--selected-bg);--chip-selected-border-color:var(--selected-border);--chip-selected-color:var(--selected-fg);--chip-selected-count-color:color-mix(in oklab, var(--selected-fg) 72%, transparent);--list-alternate-background-color:var(--surface-stripe);--list-hover-background-color:var(--surface-hover);--tabs-active-background-color:var(--selected-bg);--tabs-active-color:var(--selected-fg);--tabs-inactive-background-color:transparent;--tabs-inactive-color:var(--text-muted);--tooltip-background-color:var(--tone-neutral-solid);--tooltip-border-color:var(--tone-neutral-solid);--tooltip-color:var(--tone-neutral-on-solid);--popover-background-color:var(--surface-overlay);--popover-border-color:var(--border-default);--popover-color:var(--text-default);--popover-arrow-color:var(--border-default);--loader-border-color:var(--tone-accent-soft);--loader-border-top-color:var(--tone-accent-mark);--tour-hud-accent-color:var(--tone-accent-mark);--note-container-effect-background-color:var(--tone-accent-soft);--note-container-effect-color:var(--tone-accent-on-soft);--note-container-effect-border-left-color:var(--tone-accent-mark);--glow-box-shadow-color:0 0 16px color-mix(in oklab, var(--tone-accent-mark) 45%, transparent);--glow-hover-border-color:var(--tone-accent-border);--infuse-effect-before-background:linear-gradient(90deg, var(--tone-accent-mark), var(--accent-glow));--infuse-effect-hover-border-color:var(--tone-accent-mark);--infuse-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent);--up-lift-effect-before-background:linear-gradient(135deg, var(--tone-accent-mark), var(--accent-glow));--up-lift-effect-box-shadow-color:var(--shadow-color-strong);--up-lift-effect-hover-border-color:var(--tone-accent-mark);--up-lift-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent)}
|
|
2
|
+
/*
|
|
3
|
+
* Component recipes for the authored themes. Badge and Chip take a tone and one shared set
|
|
4
|
+
* of roles (soft background, ink on soft, border), so a "success" badge, a selected
|
|
5
|
+
* "success" chip and a success toast carry the same three colours.
|
|
6
|
+
*
|
|
7
|
+
* These rules sit here rather than in @memobit/libs while the classic themes still drive
|
|
8
|
+
* the same components. Once the classic themes are retired they move into the lib.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
[data-theme='hub-deep-water'] .badge-variant--default {
|
|
12
|
+
--recipe-soft: var(--tone-neutral-soft);
|
|
13
|
+
--recipe-soft-hover: var(--tone-neutral-soft-hover);
|
|
14
|
+
--recipe-on-soft: var(--tone-neutral-on-soft);
|
|
15
|
+
--recipe-border: var(--tone-neutral-border);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
[data-theme='hub-deep-water'] :is(.badge-variant--info, .chip--info) {
|
|
19
|
+
--recipe-soft: var(--tone-accent-soft);
|
|
20
|
+
--recipe-soft-hover: var(--tone-accent-soft-hover);
|
|
21
|
+
--recipe-on-soft: var(--tone-accent-on-soft);
|
|
22
|
+
--recipe-border: var(--tone-accent-border);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-theme='hub-deep-water'] :is(.badge-variant--success, .chip--success) {
|
|
26
|
+
--recipe-soft: var(--tone-success-soft);
|
|
27
|
+
--recipe-soft-hover: var(--tone-success-soft-hover);
|
|
28
|
+
--recipe-on-soft: var(--tone-success-on-soft);
|
|
29
|
+
--recipe-border: var(--tone-success-border);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
[data-theme='hub-deep-water'] :is(.badge-variant--warning, .chip--warning) {
|
|
33
|
+
--recipe-soft: var(--tone-warning-soft);
|
|
34
|
+
--recipe-soft-hover: var(--tone-warning-soft-hover);
|
|
35
|
+
--recipe-on-soft: var(--tone-warning-on-soft);
|
|
36
|
+
--recipe-border: var(--tone-warning-border);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
[data-theme='hub-deep-water'] :is(.badge-variant--danger, .chip--danger) {
|
|
40
|
+
--recipe-soft: var(--tone-danger-soft);
|
|
41
|
+
--recipe-soft-hover: var(--tone-danger-soft-hover);
|
|
42
|
+
--recipe-on-soft: var(--tone-danger-on-soft);
|
|
43
|
+
--recipe-border: var(--tone-danger-border);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
[data-theme='hub-deep-water']
|
|
47
|
+
.badge:is(.badge-variant--default, .badge-variant--info, .badge-variant--success, .badge-variant--warning, .badge-variant--danger) {
|
|
48
|
+
border-color: var(--recipe-border);
|
|
49
|
+
background-color: var(--recipe-soft);
|
|
50
|
+
color: var(--recipe-on-soft);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
[data-theme='hub-deep-water'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger) {
|
|
54
|
+
border-color: var(--border-default);
|
|
55
|
+
background: transparent;
|
|
56
|
+
color: var(--text-default);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
[data-theme='hub-deep-water'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger):hover:not(:disabled) {
|
|
60
|
+
border-color: var(--recipe-border);
|
|
61
|
+
background: var(--surface-hover);
|
|
62
|
+
color: var(--text-strong);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
[data-theme='hub-deep-water'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected {
|
|
66
|
+
border-color: var(--recipe-border);
|
|
67
|
+
background: var(--recipe-soft);
|
|
68
|
+
color: var(--recipe-on-soft);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[data-theme='hub-deep-water'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected:hover:not(:disabled) {
|
|
72
|
+
border-color: var(--recipe-border);
|
|
73
|
+
background: var(--recipe-soft-hover);
|
|
74
|
+
color: var(--recipe-on-soft);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* A default chip carries no tone, so its selected state is the theme's selection style. */
|
|
78
|
+
[data-theme='hub-deep-water'] .chip.chip--default {
|
|
79
|
+
--recipe-soft: var(--selected-bg);
|
|
80
|
+
--recipe-soft-hover: var(--selected-bg-hover);
|
|
81
|
+
--recipe-on-soft: var(--selected-fg);
|
|
82
|
+
--recipe-border: var(--selected-border);
|
|
83
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
[data-theme='hub-shallows']{color-scheme:light;--font-body:'Inter', system-ui, sans-serif;--font-display:'JetBrains Mono', ui-monospace, monospace;--font-mono:ui-monospace, SFMono-Regular, 'JetBrains Mono', Menlo, Consolas, monospace;--display-style:normal;--display-weight:600;--display-size:var(--font-size-md);--display-transform:none;--display-tracking:-0.01em;--label-weight:500;--label-transform:none;--label-tracking:normal;--header-weight:600;--canvas-layers:radial-gradient(55% 50% at 100% 0%, rgba(14, 116, 144, 0.09) 0%, transparent 65%), linear-gradient(160deg, #f2f7f9 0%, #e6eef2 100%);--surface-canvas:#ebf2f5;--surface-card:#ffffff;--surface-raised:#ffffff;--surface-raised-alt:#f4f8fa;--surface-overlay:#ffffff;--button-fill:#ffffff;--surface-overlay-card:#ffffff;--surface-sunken:#dbe6ec;--control-hover:#e4edf2;--surface-hover:color-mix(in oklab, #0e7490 8%, transparent);--surface-stripe:#f7fafb;--rating-empty:color-mix(in oklab, #dbe6ec 85%, #0b1622);--surface-selected:color-mix(in oklab, #0e7490 18%, transparent);--surface-blur:none;--text-strong:#0b1622;--text-default:#1c2a38;--text-soft:#344556;--text-muted:#526375;--text-subtle:#7d8c9b;--text-link:#0b6680;--text-link-hover:#084b5e;--border-subtle:rgba(11, 22, 34, 0.08);--border-default:rgba(11, 22, 34, 0.14);--border-strong:rgba(11, 22, 34, 0.14);--border-card:rgba(11, 22, 34, 0.1);--border-card-hover:rgba(14, 116, 144, 0.45);--field-bg:#ffffff;--field-bg-focus:#ffffff;--field-bg-disabled:color-mix(in oklab, #ffffff 94%, #0b1622);--field-fg:#1c2a38;--field-border:rgba(11, 22, 34, 0.2);--field-border-hover:#0e7490;--field-border-focus:#0e7490;--field-placeholder:#7d8c9b;--field-label:#526375;--field-ring:color-mix(in oklab, #0e7490 24%, transparent);--tone-neutral-solid:#0b1622;--tone-neutral-solid-hover:color-mix(in oklab, #0b1622 70%, #1c2a38);--tone-neutral-on-solid:#ffffff;--tone-neutral-soft:#e4edf2;--tone-neutral-soft-hover:color-mix(in oklab, #e4edf2 92%, #0b1622);--tone-neutral-on-soft:#0b1622;--tone-neutral-border:rgba(11, 22, 34, 0.14);--tone-neutral-text:#344556;--tone-accent-solid:#0e7490;--tone-accent-mark:#0e7490;--tone-accent-solid-hover:#0b5f77;--tone-accent-on-solid:#ffffff;--tone-accent-soft:color-mix(in oklab, #0e7490 16%, transparent);--tone-accent-soft-hover:color-mix(in oklab, #0e7490 24%, transparent);--tone-accent-on-soft:#0b6680;--tone-accent-border:color-mix(in oklab, #0e7490 40%, transparent);--tone-accent-text:#0b6680;--tone-success-solid:#15803d;--tone-success-mark:#15803d;--tone-success-solid-hover:#166534;--tone-success-on-solid:#ffffff;--tone-success-soft:color-mix(in oklab, #15803d 16%, transparent);--tone-success-soft-hover:color-mix(in oklab, #15803d 24%, transparent);--tone-success-on-soft:#15703a;--tone-success-border:color-mix(in oklab, #15803d 40%, transparent);--tone-success-text:#15703a;--tone-warning-solid:#a16207;--tone-warning-mark:#d98a0b;--tone-warning-solid-hover:#854d0e;--tone-warning-on-solid:#ffffff;--tone-warning-soft:color-mix(in oklab, #d98a0b 16%, transparent);--tone-warning-soft-hover:color-mix(in oklab, #d98a0b 24%, transparent);--tone-warning-on-soft:#8a5306;--tone-warning-border:color-mix(in oklab, #d98a0b 40%, transparent);--tone-warning-text:#8a5306;--tone-danger-solid:#b91c1c;--tone-danger-mark:#b91c1c;--tone-danger-solid-hover:#991b1b;--tone-danger-on-solid:#ffffff;--tone-danger-soft:color-mix(in oklab, #b91c1c 16%, transparent);--tone-danger-soft-hover:color-mix(in oklab, #b91c1c 24%, transparent);--tone-danger-on-soft:#a91d1d;--tone-danger-border:color-mix(in oklab, #b91c1c 40%, transparent);--tone-danger-text:#a91d1d;--accent-glow:#19cde6;--selected-bg:var(--tone-neutral-solid);--selected-bg-hover:var(--tone-neutral-solid-hover);--selected-fg:var(--tone-neutral-on-solid);--selected-border:var(--tone-neutral-solid);--selected-solid:var(--tone-neutral-solid);--selected-solid-fg:var(--tone-neutral-on-solid);--shadow-color:color-mix(in oklab, color-mix(in oklab, #0b1622 40%, transparent) 45%, transparent);--shadow-color-strong:color-mix(in oklab, color-mix(in oklab, #0b1622 40%, transparent) 62%, transparent);--shadow-sm:0 1px 2px rgba(11, 22, 34, 0.06);--shadow-md:0 1px 2px rgba(11, 22, 34, 0.06), 0 8px 24px -12px rgba(11, 22, 34, 0.18);--shadow-lg:0 24px 60px rgba(11, 22, 34, 0.22);--scrim:color-mix(in oklab, #0b1622 45%, transparent);--body-background:var(--canvas-layers), var(--surface-canvas);--body-background-base:var(--surface-canvas);--body-background-wash:var(--canvas-layers), var(--surface-canvas);--body-background-glow:none;--body-color:var(--text-default);--body-color-accent:var(--text-strong);--body-color-muted:var(--text-muted);--body-title-color:var(--text-strong);--body-sub-title-color:var(--text-soft);--body-accent-color:var(--tone-accent-text);--body-danger-color:var(--tone-danger-text);--backdrop-color:var(--scrim);--box-shadow:var(--shadow-color);--text-shadow:var(--shadow-color);--border-color:var(--border-strong);--delimiter-color:var(--border-subtle);--links-color:var(--text-link);--links-hover-color:var(--text-link-hover);--font-family:var(--font-body);--font-family-sans:var(--font-body);--font-family-display:var(--font-display);--font-family-mono:var(--font-mono);--header-background-color:var(--surface-raised);--header-border-bottom-color:var(--border-subtle);--header-color:var(--text-strong);--header-font-weight:var(--header-weight);--button-default-background-color:var(--button-fill);--button-default-border-color:var(--border-default);--button-default-color:var(--text-default);--button-default-hover-background-color:var(--control-hover);--button-default-hover-border-color:var(--field-border-hover);--button-default-hover-color:var(--text-strong);--button-ghost-background-color:transparent;--button-ghost-border-color:transparent;--button-ghost-color:var(--text-soft);--button-ghost-hover-background-color:var(--control-hover);--button-ghost-hover-border-color:transparent;--button-ghost-hover-color:var(--text-strong);--button-plain-color:var(--text-soft);--button-plain-hover-color:var(--text-strong);--button-info-background-color:var(--tone-accent-solid);--button-info-border-color:var(--tone-accent-mark);--button-info-color:var(--tone-accent-on-solid);--button-info-hover-background-color:var(--tone-accent-solid-hover);--button-info-hover-border-color:var(--tone-accent-mark);--button-info-hover-color:var(--tone-accent-on-solid);--toast-info-background-color:var(--tone-accent-soft);--toast-info-border-color:var(--tone-accent-border);--toast-info-color:var(--tone-accent-on-soft);--progress-info-bar-border-color:var(--tone-accent-mark);--progress-info-bar-fill-color:var(--tone-accent-mark);--rating-color-info:var(--tone-accent-mark);--card-tint-info-background:var(--tone-accent-soft);--button-success-background-color:var(--tone-success-solid);--button-success-border-color:var(--tone-success-mark);--button-success-color:var(--tone-success-on-solid);--button-success-hover-background-color:var(--tone-success-solid-hover);--button-success-hover-border-color:var(--tone-success-mark);--button-success-hover-color:var(--tone-success-on-solid);--toast-success-background-color:var(--tone-success-soft);--toast-success-border-color:var(--tone-success-border);--toast-success-color:var(--tone-success-on-soft);--progress-success-bar-border-color:var(--tone-success-mark);--progress-success-bar-fill-color:var(--tone-success-mark);--rating-color-success:var(--tone-success-mark);--card-tint-success-background:var(--tone-success-soft);--button-warning-background-color:var(--tone-warning-solid);--button-warning-border-color:var(--tone-warning-mark);--button-warning-color:var(--tone-warning-on-solid);--button-warning-hover-background-color:var(--tone-warning-solid-hover);--button-warning-hover-border-color:var(--tone-warning-mark);--button-warning-hover-color:var(--tone-warning-on-solid);--toast-warning-background-color:var(--tone-warning-soft);--toast-warning-border-color:var(--tone-warning-border);--toast-warning-color:var(--tone-warning-on-soft);--progress-warning-bar-border-color:var(--tone-warning-mark);--progress-warning-bar-fill-color:var(--tone-warning-mark);--rating-color-warning:var(--tone-warning-mark);--card-tint-warning-background:var(--tone-warning-soft);--button-danger-background-color:var(--tone-danger-solid);--button-danger-border-color:var(--tone-danger-mark);--button-danger-color:var(--tone-danger-on-solid);--button-danger-hover-background-color:var(--tone-danger-solid-hover);--button-danger-hover-border-color:var(--tone-danger-mark);--button-danger-hover-color:var(--tone-danger-on-solid);--toast-danger-background-color:var(--tone-danger-soft);--toast-danger-border-color:var(--tone-danger-border);--toast-danger-color:var(--tone-danger-on-soft);--progress-danger-bar-border-color:var(--tone-danger-mark);--progress-danger-bar-fill-color:var(--tone-danger-mark);--rating-color-danger:var(--tone-danger-mark);--card-tint-danger-background:var(--tone-danger-soft);--progress-bar-background-color:var(--surface-sunken);--progress-bar-color:var(--text-default);--progress-default-bar-border-color:var(--border-strong);--progress-default-bar-fill-color:var(--text-muted);--rating-empty-color:var(--rating-empty);--rating-empty-label-color:var(--text-muted);--rating-half-rate-empty-color:var(--rating-empty);--card-tint-default-background:var(--surface-raised-alt);--card-accent-color:var(--tone-accent-text);--card-backdrop-filter:var(--surface-blur);--card-background-accent-color:var(--surface-raised-alt);--card-background-color:var(--surface-card);--card-border-accent-color:var(--tone-accent-mark);--card-border-color:var(--border-card);--card-box-shadow:var(--shadow-md);--card-color:var(--text-default);--card-footer-background-color:var(--surface-raised-alt);--card-footer-color:var(--text-soft);--card-hover-border-color:var(--border-card-hover);--card-surface-box-shadow:var(--shadow-sm);--card-title-color:var(--text-strong);--card-title-font-family:var(--font-display);--card-title-font-size:var(--display-size);--card-title-font-style:var(--display-style);--card-title-font-weight:var(--display-weight);--card-title-letter-spacing:var(--display-tracking);--card-title-text-transform:var(--display-transform);--modal-backdrop-filter:var(--surface-blur);--modal-background-color:var(--surface-overlay-card);--modal-body-color:var(--text-default);--modal-border-color:var(--border-card);--modal-box-shadow:var(--shadow-lg);--modal-box-shadow-hover:var(--shadow-lg);--modal-color:var(--text-default);--modal-footer-background-color:var(--surface-raised-alt);--modal-header-background-color:var(--surface-raised-alt);--modal-header-color:var(--text-strong);--modal-surface-box-shadow:var(--shadow-lg);--modal-title-color:var(--text-strong);--modal-title-font-family:var(--font-body);--modal-title-font-size:var(--font-size-lg);--modal-title-font-style:normal;--modal-title-font-weight:600;--modal-title-letter-spacing:normal;--modal-title-text-transform:none;--drawer-background-color:var(--surface-overlay-card);--drawer-header-background-color:var(--surface-raised-alt);--drawer-border-color:var(--border-card);--drawer-shadow:var(--shadow-lg);--form-control-background-color:var(--field-bg);--form-control-border-color:var(--field-border);--form-control-color:var(--field-fg);--form-control-focus-background-color:var(--field-bg-focus);--form-control-focus-border-color:var(--field-border-focus);--form-control-focus-color:var(--field-fg);--form-control-focus-ring:var(--field-ring);--form-control-error-background-color:color-mix(in oklab, var(--tone-danger-solid) 6%, var(--field-bg));--form-control-error-border-color:var(--tone-danger-mark);--form-control-error-color:var(--tone-danger-text);--form-control-success-background-color:color-mix(in oklab, var(--tone-success-solid) 7%, var(--field-bg));--form-control-success-border-color:var(--tone-success-mark);--form-control-success-color:var(--tone-success-text);--form-control-font-family:var(--font-body);--form-control-label-color:var(--field-label);--form-control-label-font-size:var(--font-size-xs);--form-control-label-font-weight:var(--label-weight);--form-control-label-letter-spacing:var(--label-tracking);--form-control-label-text-transform:var(--label-transform);--form-control-placeholder-color:var(--field-placeholder);--form-control-selection-background-color:var(--selected-solid);--form-control-selection-border-color:var(--selected-solid);--form-control-selection-color:var(--selected-solid-fg);--form-control-selection-label-color:var(--text-default);--datepicker-input-background-color:var(--field-bg);--dropdown-border-color:var(--field-border);--dropdown-header-background-color:var(--field-bg);--dropdown-header-border-focus-color:var(--field-border-focus);--dropdown-header-color:var(--field-fg);--dropdown-options-background-color:var(--surface-overlay);--dropdown-options-color:var(--text-default);--dropdown-options-hover-background-color:var(--surface-hover);--dropdown-options-hover-color:var(--text-strong);--dropdown-options-selected-background-color:var(--surface-selected);--dropdown-options-selected-color:var(--text-strong);--dropdown-action-background-color:var(--surface-raised-alt);--dropdown-action-color:var(--text-link);--dropdown-action-hover-background-color:var(--surface-hover);--dropdown-action-hover-color:var(--text-link-hover);--dropdown-chips-background-color:var(--selected-bg);--dropdown-chips-border-color:var(--selected-border);--dropdown-chips-color:var(--selected-fg);--dropdown-chips-hover-background-color:var(--selected-bg-hover);--slider-track-background-color:var(--surface-sunken);--slider-track-border-color:var(--field-border);--slider-track-hover-background-color:var(--control-hover);--slider-track-hover-border-color:var(--field-border-hover);--slider-thumb-background-color:var(--tone-accent-mark);--slider-thumb-border-color:var(--tone-accent-mark);--slider-thumb-hover-background-color:var(--tone-accent-solid-hover);--slider-thumb-hover-border-color:var(--tone-accent-solid-hover);--calendar-background-color:var(--surface-overlay);--calendar-border-color:var(--border-default);--calendar-day-color:var(--text-soft);--calendar-day-disabled-color:var(--text-subtle);--calendar-day-hover-background-color:var(--control-hover);--calendar-day-selected-background-color:var(--tone-accent-solid);--calendar-day-selected-color:var(--tone-accent-on-solid);--calendar-day-today-border-color:var(--tone-accent-mark);--calendar-day-weekend-color:var(--text-muted);--calendar-header-background-color:var(--surface-raised-alt);--calendar-header-color:var(--text-strong);--chip-hover-background-color:var(--surface-hover);--chip-hover-border-color:var(--border-strong);--chip-hover-color:var(--text-strong);--chip-selected-background-color:var(--selected-bg);--chip-selected-border-color:var(--selected-border);--chip-selected-color:var(--selected-fg);--chip-selected-count-color:color-mix(in oklab, var(--selected-fg) 72%, transparent);--list-alternate-background-color:var(--surface-stripe);--list-hover-background-color:var(--surface-hover);--tabs-active-background-color:var(--selected-bg);--tabs-active-color:var(--selected-fg);--tabs-inactive-background-color:transparent;--tabs-inactive-color:var(--text-muted);--tooltip-background-color:var(--tone-neutral-solid);--tooltip-border-color:var(--tone-neutral-solid);--tooltip-color:var(--tone-neutral-on-solid);--popover-background-color:var(--surface-overlay);--popover-border-color:var(--border-default);--popover-color:var(--text-default);--popover-arrow-color:var(--border-default);--loader-border-color:var(--tone-accent-soft);--loader-border-top-color:var(--tone-accent-mark);--tour-hud-accent-color:var(--tone-accent-mark);--note-container-effect-background-color:var(--tone-accent-soft);--note-container-effect-color:var(--tone-accent-on-soft);--note-container-effect-border-left-color:var(--tone-accent-mark);--glow-box-shadow-color:0 0 16px color-mix(in oklab, var(--tone-accent-mark) 45%, transparent);--glow-hover-border-color:var(--tone-accent-border);--infuse-effect-before-background:linear-gradient(90deg, var(--tone-accent-mark), var(--accent-glow));--infuse-effect-hover-border-color:var(--tone-accent-mark);--infuse-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent);--up-lift-effect-before-background:linear-gradient(135deg, var(--tone-accent-mark), var(--accent-glow));--up-lift-effect-box-shadow-color:var(--shadow-color-strong);--up-lift-effect-hover-border-color:var(--tone-accent-mark);--up-lift-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent)}
|
|
2
|
+
/*
|
|
3
|
+
* Component recipes for the authored themes. Badge and Chip take a tone and one shared set
|
|
4
|
+
* of roles (soft background, ink on soft, border), so a "success" badge, a selected
|
|
5
|
+
* "success" chip and a success toast carry the same three colours.
|
|
6
|
+
*
|
|
7
|
+
* These rules sit here rather than in @memobit/libs while the classic themes still drive
|
|
8
|
+
* the same components. Once the classic themes are retired they move into the lib.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
[data-theme='hub-shallows'] .badge-variant--default {
|
|
12
|
+
--recipe-soft: var(--tone-neutral-soft);
|
|
13
|
+
--recipe-soft-hover: var(--tone-neutral-soft-hover);
|
|
14
|
+
--recipe-on-soft: var(--tone-neutral-on-soft);
|
|
15
|
+
--recipe-border: var(--tone-neutral-border);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
[data-theme='hub-shallows'] :is(.badge-variant--info, .chip--info) {
|
|
19
|
+
--recipe-soft: var(--tone-accent-soft);
|
|
20
|
+
--recipe-soft-hover: var(--tone-accent-soft-hover);
|
|
21
|
+
--recipe-on-soft: var(--tone-accent-on-soft);
|
|
22
|
+
--recipe-border: var(--tone-accent-border);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-theme='hub-shallows'] :is(.badge-variant--success, .chip--success) {
|
|
26
|
+
--recipe-soft: var(--tone-success-soft);
|
|
27
|
+
--recipe-soft-hover: var(--tone-success-soft-hover);
|
|
28
|
+
--recipe-on-soft: var(--tone-success-on-soft);
|
|
29
|
+
--recipe-border: var(--tone-success-border);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
[data-theme='hub-shallows'] :is(.badge-variant--warning, .chip--warning) {
|
|
33
|
+
--recipe-soft: var(--tone-warning-soft);
|
|
34
|
+
--recipe-soft-hover: var(--tone-warning-soft-hover);
|
|
35
|
+
--recipe-on-soft: var(--tone-warning-on-soft);
|
|
36
|
+
--recipe-border: var(--tone-warning-border);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
[data-theme='hub-shallows'] :is(.badge-variant--danger, .chip--danger) {
|
|
40
|
+
--recipe-soft: var(--tone-danger-soft);
|
|
41
|
+
--recipe-soft-hover: var(--tone-danger-soft-hover);
|
|
42
|
+
--recipe-on-soft: var(--tone-danger-on-soft);
|
|
43
|
+
--recipe-border: var(--tone-danger-border);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
[data-theme='hub-shallows']
|
|
47
|
+
.badge:is(.badge-variant--default, .badge-variant--info, .badge-variant--success, .badge-variant--warning, .badge-variant--danger) {
|
|
48
|
+
border-color: var(--recipe-border);
|
|
49
|
+
background-color: var(--recipe-soft);
|
|
50
|
+
color: var(--recipe-on-soft);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
[data-theme='hub-shallows'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger) {
|
|
54
|
+
border-color: var(--border-default);
|
|
55
|
+
background: transparent;
|
|
56
|
+
color: var(--text-default);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
[data-theme='hub-shallows'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger):hover:not(:disabled) {
|
|
60
|
+
border-color: var(--recipe-border);
|
|
61
|
+
background: var(--surface-hover);
|
|
62
|
+
color: var(--text-strong);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
[data-theme='hub-shallows'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected {
|
|
66
|
+
border-color: var(--recipe-border);
|
|
67
|
+
background: var(--recipe-soft);
|
|
68
|
+
color: var(--recipe-on-soft);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[data-theme='hub-shallows'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected:hover:not(:disabled) {
|
|
72
|
+
border-color: var(--recipe-border);
|
|
73
|
+
background: var(--recipe-soft-hover);
|
|
74
|
+
color: var(--recipe-on-soft);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* A default chip carries no tone, so its selected state is the theme's selection style. */
|
|
78
|
+
[data-theme='hub-shallows'] .chip.chip--default {
|
|
79
|
+
--recipe-soft: var(--selected-bg);
|
|
80
|
+
--recipe-soft-hover: var(--selected-bg-hover);
|
|
81
|
+
--recipe-on-soft: var(--selected-fg);
|
|
82
|
+
--recipe-border: var(--selected-border);
|
|
83
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
[data-theme='impulse-pause']{color-scheme:light;--font-body:'Schibsted Grotesk', system-ui, sans-serif;--font-display:'Instrument Serif', Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, 'JetBrains Mono', Menlo, Consolas, monospace;--display-style:normal;--display-weight:400;--display-size:var(--font-size-xl);--display-transform:none;--display-tracking:normal;--label-weight:600;--label-transform:none;--label-tracking:0.02em;--header-weight:600;--canvas-layers:radial-gradient(55% 50% at 100% 0%, rgba(91, 63, 166, 0.07) 0%, transparent 65%), radial-gradient(45% 45% at 0% 100%, rgba(214, 90, 60, 0.06) 0%, transparent 65%);--surface-canvas:#f4f1ec;--surface-card:#fdfcfa;--surface-raised:#ffffff;--surface-raised-alt:#f6f3ef;--surface-overlay:#ffffff;--button-fill:#ffffff;--surface-overlay-card:#fdfcfa;--surface-sunken:#e6e0d9;--control-hover:#ece7e1;--surface-hover:color-mix(in oklab, #6d4fc0 8%, transparent);--surface-stripe:#f9f7f4;--rating-empty:color-mix(in oklab, #e6e0d9 85%, #1b1820);--surface-selected:color-mix(in oklab, #6d4fc0 18%, transparent);--surface-blur:none;--text-strong:#1b1820;--text-default:#2b2731;--text-soft:#45404d;--text-muted:#5f5968;--text-subtle:#8c8595;--text-link:#55399d;--text-link-hover:#3d2878;--border-subtle:rgba(27, 24, 32, 0.08);--border-default:rgba(27, 24, 32, 0.14);--border-strong:rgba(27, 24, 32, 0.14);--border-card:rgba(27, 24, 32, 0.09);--border-card-hover:rgba(91, 63, 166, 0.4);--field-bg:#ffffff;--field-bg-focus:#ffffff;--field-bg-disabled:color-mix(in oklab, #ffffff 94%, #1b1820);--field-fg:#2b2731;--field-border:rgba(27, 24, 32, 0.2);--field-border-hover:#5b3fa6;--field-border-focus:#6d4fc0;--field-placeholder:#8c8595;--field-label:#5f5968;--field-ring:color-mix(in oklab, #6d4fc0 24%, transparent);--tone-neutral-solid:#1b1820;--tone-neutral-solid-hover:color-mix(in oklab, #1b1820 70%, #2b2731);--tone-neutral-on-solid:#ffffff;--tone-neutral-soft:#ece7e1;--tone-neutral-soft-hover:color-mix(in oklab, #ece7e1 92%, #1b1820);--tone-neutral-on-soft:#1b1820;--tone-neutral-border:rgba(27, 24, 32, 0.14);--tone-neutral-text:#45404d;--tone-accent-solid:#5b3fa6;--tone-accent-mark:#6d4fc0;--tone-accent-solid-hover:#4a328a;--tone-accent-on-solid:#ffffff;--tone-accent-soft:color-mix(in oklab, #6d4fc0 16%, transparent);--tone-accent-soft-hover:color-mix(in oklab, #6d4fc0 24%, transparent);--tone-accent-on-soft:#55399d;--tone-accent-border:color-mix(in oklab, #6d4fc0 40%, transparent);--tone-accent-text:#55399d;--tone-success-solid:#2f7552;--tone-success-mark:#3f9468;--tone-success-solid-hover:#265f43;--tone-success-on-solid:#ffffff;--tone-success-soft:color-mix(in oklab, #3f9468 16%, transparent);--tone-success-soft-hover:color-mix(in oklab, #3f9468 24%, transparent);--tone-success-on-soft:#2a6a4a;--tone-success-border:color-mix(in oklab, #3f9468 40%, transparent);--tone-success-text:#2a6a4a;--tone-warning-solid:#a5560f;--tone-warning-mark:#d9822b;--tone-warning-solid-hover:#88460b;--tone-warning-on-solid:#ffffff;--tone-warning-soft:color-mix(in oklab, #d9822b 16%, transparent);--tone-warning-soft-hover:color-mix(in oklab, #d9822b 24%, transparent);--tone-warning-on-soft:#8f4a0c;--tone-warning-border:color-mix(in oklab, #d9822b 40%, transparent);--tone-warning-text:#8f4a0c;--tone-danger-solid:#c03a2b;--tone-danger-mark:#e0573f;--tone-danger-solid-hover:#a02f22;--tone-danger-on-solid:#ffffff;--tone-danger-soft:color-mix(in oklab, #e0573f 16%, transparent);--tone-danger-soft-hover:color-mix(in oklab, #e0573f 24%, transparent);--tone-danger-on-soft:#ad3427;--tone-danger-border:color-mix(in oklab, #e0573f 40%, transparent);--tone-danger-text:#ad3427;--accent-glow:#a58bf0;--selected-bg:var(--tone-neutral-solid);--selected-bg-hover:var(--tone-neutral-solid-hover);--selected-fg:var(--tone-neutral-on-solid);--selected-border:var(--tone-neutral-solid);--selected-solid:var(--tone-neutral-solid);--selected-solid-fg:var(--tone-neutral-on-solid);--shadow-color:color-mix(in oklab, color-mix(in oklab, #1b1820 40%, transparent) 45%, transparent);--shadow-color-strong:color-mix(in oklab, color-mix(in oklab, #1b1820 40%, transparent) 62%, transparent);--shadow-sm:0 1px 2px rgba(27, 24, 32, 0.05);--shadow-md:0 1px 2px rgba(27, 24, 32, 0.05), 0 12px 28px -16px rgba(27, 24, 32, 0.22);--shadow-lg:0 24px 60px rgba(27, 24, 32, 0.2);--scrim:color-mix(in oklab, #1b1820 45%, transparent);--body-background:var(--canvas-layers), var(--surface-canvas);--body-background-base:var(--surface-canvas);--body-background-wash:var(--canvas-layers), var(--surface-canvas);--body-background-glow:none;--body-color:var(--text-default);--body-color-accent:var(--text-strong);--body-color-muted:var(--text-muted);--body-title-color:var(--text-strong);--body-sub-title-color:var(--text-soft);--body-accent-color:var(--tone-accent-text);--body-danger-color:var(--tone-danger-text);--backdrop-color:var(--scrim);--box-shadow:var(--shadow-color);--text-shadow:var(--shadow-color);--border-color:var(--border-strong);--delimiter-color:var(--border-subtle);--links-color:var(--text-link);--links-hover-color:var(--text-link-hover);--font-family:var(--font-body);--font-family-sans:var(--font-body);--font-family-display:var(--font-display);--font-family-mono:var(--font-mono);--header-background-color:var(--surface-raised);--header-border-bottom-color:var(--border-subtle);--header-color:var(--text-strong);--header-font-weight:var(--header-weight);--button-default-background-color:var(--button-fill);--button-default-border-color:var(--border-default);--button-default-color:var(--text-default);--button-default-hover-background-color:var(--control-hover);--button-default-hover-border-color:var(--field-border-hover);--button-default-hover-color:var(--text-strong);--button-ghost-background-color:transparent;--button-ghost-border-color:transparent;--button-ghost-color:var(--text-soft);--button-ghost-hover-background-color:var(--control-hover);--button-ghost-hover-border-color:transparent;--button-ghost-hover-color:var(--text-strong);--button-plain-color:var(--text-soft);--button-plain-hover-color:var(--text-strong);--button-info-background-color:var(--tone-accent-solid);--button-info-border-color:var(--tone-accent-mark);--button-info-color:var(--tone-accent-on-solid);--button-info-hover-background-color:var(--tone-accent-solid-hover);--button-info-hover-border-color:var(--tone-accent-mark);--button-info-hover-color:var(--tone-accent-on-solid);--toast-info-background-color:var(--tone-accent-soft);--toast-info-border-color:var(--tone-accent-border);--toast-info-color:var(--tone-accent-on-soft);--progress-info-bar-border-color:var(--tone-accent-mark);--progress-info-bar-fill-color:var(--tone-accent-mark);--rating-color-info:var(--tone-accent-mark);--card-tint-info-background:var(--tone-accent-soft);--button-success-background-color:var(--tone-success-solid);--button-success-border-color:var(--tone-success-mark);--button-success-color:var(--tone-success-on-solid);--button-success-hover-background-color:var(--tone-success-solid-hover);--button-success-hover-border-color:var(--tone-success-mark);--button-success-hover-color:var(--tone-success-on-solid);--toast-success-background-color:var(--tone-success-soft);--toast-success-border-color:var(--tone-success-border);--toast-success-color:var(--tone-success-on-soft);--progress-success-bar-border-color:var(--tone-success-mark);--progress-success-bar-fill-color:var(--tone-success-mark);--rating-color-success:var(--tone-success-mark);--card-tint-success-background:var(--tone-success-soft);--button-warning-background-color:var(--tone-warning-solid);--button-warning-border-color:var(--tone-warning-mark);--button-warning-color:var(--tone-warning-on-solid);--button-warning-hover-background-color:var(--tone-warning-solid-hover);--button-warning-hover-border-color:var(--tone-warning-mark);--button-warning-hover-color:var(--tone-warning-on-solid);--toast-warning-background-color:var(--tone-warning-soft);--toast-warning-border-color:var(--tone-warning-border);--toast-warning-color:var(--tone-warning-on-soft);--progress-warning-bar-border-color:var(--tone-warning-mark);--progress-warning-bar-fill-color:var(--tone-warning-mark);--rating-color-warning:var(--tone-warning-mark);--card-tint-warning-background:var(--tone-warning-soft);--button-danger-background-color:var(--tone-danger-solid);--button-danger-border-color:var(--tone-danger-mark);--button-danger-color:var(--tone-danger-on-solid);--button-danger-hover-background-color:var(--tone-danger-solid-hover);--button-danger-hover-border-color:var(--tone-danger-mark);--button-danger-hover-color:var(--tone-danger-on-solid);--toast-danger-background-color:var(--tone-danger-soft);--toast-danger-border-color:var(--tone-danger-border);--toast-danger-color:var(--tone-danger-on-soft);--progress-danger-bar-border-color:var(--tone-danger-mark);--progress-danger-bar-fill-color:var(--tone-danger-mark);--rating-color-danger:var(--tone-danger-mark);--card-tint-danger-background:var(--tone-danger-soft);--progress-bar-background-color:var(--surface-sunken);--progress-bar-color:var(--text-default);--progress-default-bar-border-color:var(--border-strong);--progress-default-bar-fill-color:var(--text-muted);--rating-empty-color:var(--rating-empty);--rating-empty-label-color:var(--text-muted);--rating-half-rate-empty-color:var(--rating-empty);--card-tint-default-background:var(--surface-raised-alt);--card-accent-color:var(--tone-accent-text);--card-backdrop-filter:var(--surface-blur);--card-background-accent-color:var(--surface-raised-alt);--card-background-color:var(--surface-card);--card-border-accent-color:var(--tone-accent-mark);--card-border-color:var(--border-card);--card-box-shadow:var(--shadow-md);--card-color:var(--text-default);--card-footer-background-color:var(--surface-raised-alt);--card-footer-color:var(--text-soft);--card-hover-border-color:var(--border-card-hover);--card-surface-box-shadow:var(--shadow-sm);--card-title-color:var(--text-strong);--card-title-font-family:var(--font-display);--card-title-font-size:var(--display-size);--card-title-font-style:var(--display-style);--card-title-font-weight:var(--display-weight);--card-title-letter-spacing:var(--display-tracking);--card-title-text-transform:var(--display-transform);--modal-backdrop-filter:var(--surface-blur);--modal-background-color:var(--surface-overlay-card);--modal-body-color:var(--text-default);--modal-border-color:var(--border-card);--modal-box-shadow:var(--shadow-lg);--modal-box-shadow-hover:var(--shadow-lg);--modal-color:var(--text-default);--modal-footer-background-color:var(--surface-raised-alt);--modal-header-background-color:var(--surface-raised-alt);--modal-header-color:var(--text-strong);--modal-surface-box-shadow:var(--shadow-lg);--modal-title-color:var(--text-strong);--modal-title-font-family:var(--font-display);--modal-title-font-size:var(--font-size-xl);--modal-title-font-style:normal;--modal-title-font-weight:400;--modal-title-letter-spacing:normal;--modal-title-text-transform:none;--drawer-background-color:var(--surface-overlay-card);--drawer-header-background-color:var(--surface-raised-alt);--drawer-border-color:var(--border-card);--drawer-shadow:var(--shadow-lg);--form-control-background-color:var(--field-bg);--form-control-border-color:var(--field-border);--form-control-color:var(--field-fg);--form-control-focus-background-color:var(--field-bg-focus);--form-control-focus-border-color:var(--field-border-focus);--form-control-focus-color:var(--field-fg);--form-control-focus-ring:var(--field-ring);--form-control-error-background-color:color-mix(in oklab, var(--tone-danger-solid) 6%, var(--field-bg));--form-control-error-border-color:var(--tone-danger-mark);--form-control-error-color:var(--tone-danger-text);--form-control-success-background-color:color-mix(in oklab, var(--tone-success-solid) 7%, var(--field-bg));--form-control-success-border-color:var(--tone-success-mark);--form-control-success-color:var(--tone-success-text);--form-control-font-family:var(--font-body);--form-control-label-color:var(--field-label);--form-control-label-font-size:var(--font-size-xs);--form-control-label-font-weight:var(--label-weight);--form-control-label-letter-spacing:var(--label-tracking);--form-control-label-text-transform:var(--label-transform);--form-control-placeholder-color:var(--field-placeholder);--form-control-selection-background-color:var(--selected-solid);--form-control-selection-border-color:var(--selected-solid);--form-control-selection-color:var(--selected-solid-fg);--form-control-selection-label-color:var(--text-default);--datepicker-input-background-color:var(--field-bg);--dropdown-border-color:var(--field-border);--dropdown-header-background-color:var(--field-bg);--dropdown-header-border-focus-color:var(--field-border-focus);--dropdown-header-color:var(--field-fg);--dropdown-options-background-color:var(--surface-overlay);--dropdown-options-color:var(--text-default);--dropdown-options-hover-background-color:var(--surface-hover);--dropdown-options-hover-color:var(--text-strong);--dropdown-options-selected-background-color:var(--surface-selected);--dropdown-options-selected-color:var(--text-strong);--dropdown-action-background-color:var(--surface-raised-alt);--dropdown-action-color:var(--text-link);--dropdown-action-hover-background-color:var(--surface-hover);--dropdown-action-hover-color:var(--text-link-hover);--dropdown-chips-background-color:var(--selected-bg);--dropdown-chips-border-color:var(--selected-border);--dropdown-chips-color:var(--selected-fg);--dropdown-chips-hover-background-color:var(--selected-bg-hover);--slider-track-background-color:var(--surface-sunken);--slider-track-border-color:var(--field-border);--slider-track-hover-background-color:var(--control-hover);--slider-track-hover-border-color:var(--field-border-hover);--slider-thumb-background-color:var(--tone-accent-mark);--slider-thumb-border-color:var(--tone-accent-mark);--slider-thumb-hover-background-color:var(--tone-accent-solid-hover);--slider-thumb-hover-border-color:var(--tone-accent-solid-hover);--calendar-background-color:var(--surface-overlay);--calendar-border-color:var(--border-default);--calendar-day-color:var(--text-soft);--calendar-day-disabled-color:var(--text-subtle);--calendar-day-hover-background-color:var(--control-hover);--calendar-day-selected-background-color:var(--tone-accent-solid);--calendar-day-selected-color:var(--tone-accent-on-solid);--calendar-day-today-border-color:var(--tone-accent-mark);--calendar-day-weekend-color:var(--text-muted);--calendar-header-background-color:var(--surface-raised-alt);--calendar-header-color:var(--text-strong);--chip-hover-background-color:var(--surface-hover);--chip-hover-border-color:var(--border-strong);--chip-hover-color:var(--text-strong);--chip-selected-background-color:var(--selected-bg);--chip-selected-border-color:var(--selected-border);--chip-selected-color:var(--selected-fg);--chip-selected-count-color:color-mix(in oklab, var(--selected-fg) 72%, transparent);--list-alternate-background-color:var(--surface-stripe);--list-hover-background-color:var(--surface-hover);--tabs-active-background-color:var(--selected-bg);--tabs-active-color:var(--selected-fg);--tabs-inactive-background-color:transparent;--tabs-inactive-color:var(--text-muted);--tooltip-background-color:var(--tone-neutral-solid);--tooltip-border-color:var(--tone-neutral-solid);--tooltip-color:var(--tone-neutral-on-solid);--popover-background-color:var(--surface-overlay);--popover-border-color:var(--border-default);--popover-color:var(--text-default);--popover-arrow-color:var(--border-default);--loader-border-color:var(--tone-accent-soft);--loader-border-top-color:var(--tone-accent-mark);--tour-hud-accent-color:var(--tone-accent-mark);--note-container-effect-background-color:var(--tone-accent-soft);--note-container-effect-color:var(--tone-accent-on-soft);--note-container-effect-border-left-color:var(--tone-accent-mark);--glow-box-shadow-color:0 0 16px color-mix(in oklab, var(--tone-accent-mark) 45%, transparent);--glow-hover-border-color:var(--tone-accent-border);--infuse-effect-before-background:linear-gradient(90deg, var(--tone-accent-mark), var(--accent-glow));--infuse-effect-hover-border-color:var(--tone-accent-mark);--infuse-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent);--up-lift-effect-before-background:linear-gradient(135deg, var(--tone-accent-mark), var(--accent-glow));--up-lift-effect-box-shadow-color:var(--shadow-color-strong);--up-lift-effect-hover-border-color:var(--tone-accent-mark);--up-lift-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent)}
|
|
2
|
+
/*
|
|
3
|
+
* Component recipes for the authored themes. Badge and Chip take a tone and one shared set
|
|
4
|
+
* of roles (soft background, ink on soft, border), so a "success" badge, a selected
|
|
5
|
+
* "success" chip and a success toast carry the same three colours.
|
|
6
|
+
*
|
|
7
|
+
* These rules sit here rather than in @memobit/libs while the classic themes still drive
|
|
8
|
+
* the same components. Once the classic themes are retired they move into the lib.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
[data-theme='impulse-pause'] .badge-variant--default {
|
|
12
|
+
--recipe-soft: var(--tone-neutral-soft);
|
|
13
|
+
--recipe-soft-hover: var(--tone-neutral-soft-hover);
|
|
14
|
+
--recipe-on-soft: var(--tone-neutral-on-soft);
|
|
15
|
+
--recipe-border: var(--tone-neutral-border);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
[data-theme='impulse-pause'] :is(.badge-variant--info, .chip--info) {
|
|
19
|
+
--recipe-soft: var(--tone-accent-soft);
|
|
20
|
+
--recipe-soft-hover: var(--tone-accent-soft-hover);
|
|
21
|
+
--recipe-on-soft: var(--tone-accent-on-soft);
|
|
22
|
+
--recipe-border: var(--tone-accent-border);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-theme='impulse-pause'] :is(.badge-variant--success, .chip--success) {
|
|
26
|
+
--recipe-soft: var(--tone-success-soft);
|
|
27
|
+
--recipe-soft-hover: var(--tone-success-soft-hover);
|
|
28
|
+
--recipe-on-soft: var(--tone-success-on-soft);
|
|
29
|
+
--recipe-border: var(--tone-success-border);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
[data-theme='impulse-pause'] :is(.badge-variant--warning, .chip--warning) {
|
|
33
|
+
--recipe-soft: var(--tone-warning-soft);
|
|
34
|
+
--recipe-soft-hover: var(--tone-warning-soft-hover);
|
|
35
|
+
--recipe-on-soft: var(--tone-warning-on-soft);
|
|
36
|
+
--recipe-border: var(--tone-warning-border);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
[data-theme='impulse-pause'] :is(.badge-variant--danger, .chip--danger) {
|
|
40
|
+
--recipe-soft: var(--tone-danger-soft);
|
|
41
|
+
--recipe-soft-hover: var(--tone-danger-soft-hover);
|
|
42
|
+
--recipe-on-soft: var(--tone-danger-on-soft);
|
|
43
|
+
--recipe-border: var(--tone-danger-border);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
[data-theme='impulse-pause']
|
|
47
|
+
.badge:is(.badge-variant--default, .badge-variant--info, .badge-variant--success, .badge-variant--warning, .badge-variant--danger) {
|
|
48
|
+
border-color: var(--recipe-border);
|
|
49
|
+
background-color: var(--recipe-soft);
|
|
50
|
+
color: var(--recipe-on-soft);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
[data-theme='impulse-pause'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger) {
|
|
54
|
+
border-color: var(--border-default);
|
|
55
|
+
background: transparent;
|
|
56
|
+
color: var(--text-default);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
[data-theme='impulse-pause'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger):hover:not(:disabled) {
|
|
60
|
+
border-color: var(--recipe-border);
|
|
61
|
+
background: var(--surface-hover);
|
|
62
|
+
color: var(--text-strong);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
[data-theme='impulse-pause'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected {
|
|
66
|
+
border-color: var(--recipe-border);
|
|
67
|
+
background: var(--recipe-soft);
|
|
68
|
+
color: var(--recipe-on-soft);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[data-theme='impulse-pause'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected:hover:not(:disabled) {
|
|
72
|
+
border-color: var(--recipe-border);
|
|
73
|
+
background: var(--recipe-soft-hover);
|
|
74
|
+
color: var(--recipe-on-soft);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* A default chip carries no tone, so its selected state is the theme's selection style. */
|
|
78
|
+
[data-theme='impulse-pause'] .chip.chip--default {
|
|
79
|
+
--recipe-soft: var(--selected-bg);
|
|
80
|
+
--recipe-soft-hover: var(--selected-bg-hover);
|
|
81
|
+
--recipe-on-soft: var(--selected-fg);
|
|
82
|
+
--recipe-border: var(--selected-border);
|
|
83
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
[data-theme='impulse-still-water']{color-scheme:dark;--font-body:'Schibsted Grotesk', system-ui, sans-serif;--font-display:'Instrument Serif', Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, 'JetBrains Mono', Menlo, Consolas, monospace;--display-style:normal;--display-weight:400;--display-size:var(--font-size-xl);--display-transform:none;--display-tracking:normal;--label-weight:600;--label-transform:none;--label-tracking:0.02em;--header-weight:600;--canvas-layers:radial-gradient(55% 50% at 100% 0%, rgba(124, 199, 184, 0.08) 0%, transparent 65%), radial-gradient(50% 45% at 0% 100%, rgba(140, 170, 200, 0.06) 0%, transparent 65%), linear-gradient(170deg, #111a19 0%, #0d1312 100%);--surface-canvas:#0f1615;--surface-card:#151e1d;--surface-raised:#121a19;--surface-raised-alt:#1a2423;--surface-overlay:#1c2726;--button-fill:#1e2928;--surface-overlay-card:#16201f;--surface-sunken:#22302e;--control-hover:#212d2b;--surface-hover:color-mix(in oklab, #7cc7b8 8%, transparent);--surface-stripe:#182120;--rating-empty:color-mix(in oklab, #22302e 85%, #eef5f3);--surface-selected:color-mix(in oklab, #7cc7b8 18%, transparent);--surface-blur:none;--text-strong:#eef5f3;--text-default:#d6e2df;--text-soft:#b6c6c2;--text-muted:#90a39f;--text-subtle:#6b7d79;--text-link:#94d3c6;--text-link-hover:#bfe8df;--border-subtle:rgba(214, 226, 223, 0.08);--border-default:rgba(214, 226, 223, 0.13);--border-strong:rgba(214, 226, 223, 0.13);--border-card:rgba(214, 226, 223, 0.07);--border-card-hover:rgba(124, 199, 184, 0.4);--field-bg:#121a19;--field-bg-focus:#121a19;--field-bg-disabled:color-mix(in oklab, #121a19 94%, #eef5f3);--field-fg:#d6e2df;--field-border:rgba(214, 226, 223, 0.16);--field-border-hover:#7cc7b8;--field-border-focus:#7cc7b8;--field-placeholder:#6b7d79;--field-label:#90a39f;--field-ring:color-mix(in oklab, #7cc7b8 24%, transparent);--tone-neutral-solid:#eef5f3;--tone-neutral-solid-hover:color-mix(in oklab, #eef5f3 70%, #d6e2df);--tone-neutral-on-solid:#ffffff;--tone-neutral-soft:#212d2b;--tone-neutral-soft-hover:color-mix(in oklab, #212d2b 92%, #eef5f3);--tone-neutral-on-soft:#eef5f3;--tone-neutral-border:rgba(214, 226, 223, 0.13);--tone-neutral-text:#b6c6c2;--tone-accent-solid:#2f7a6e;--tone-accent-mark:#7cc7b8;--tone-accent-solid-hover:#38897c;--tone-accent-on-solid:#ffffff;--tone-accent-soft:color-mix(in oklab, #7cc7b8 16%, transparent);--tone-accent-soft-hover:color-mix(in oklab, #7cc7b8 24%, transparent);--tone-accent-on-soft:#94d3c6;--tone-accent-border:color-mix(in oklab, #7cc7b8 40%, transparent);--tone-accent-text:#94d3c6;--tone-success-solid:#3d7548;--tone-success-mark:#8fca9f;--tone-success-solid-hover:#468453;--tone-success-on-solid:#ffffff;--tone-success-soft:color-mix(in oklab, #8fca9f 16%, transparent);--tone-success-soft-hover:color-mix(in oklab, #8fca9f 24%, transparent);--tone-success-on-soft:#a3d4b1;--tone-success-border:color-mix(in oklab, #8fca9f 40%, transparent);--tone-success-text:#a3d4b1;--tone-warning-solid:#856519;--tone-warning-mark:#d9b86a;--tone-warning-solid-hover:#977420;--tone-warning-on-solid:#ffffff;--tone-warning-soft:color-mix(in oklab, #d9b86a 16%, transparent);--tone-warning-soft-hover:color-mix(in oklab, #d9b86a 24%, transparent);--tone-warning-on-soft:#e3c47f;--tone-warning-border:color-mix(in oklab, #d9b86a 40%, transparent);--tone-warning-text:#e3c47f;--tone-danger-solid:#9e4248;--tone-danger-mark:#e08a8f;--tone-danger-solid-hover:#b04e54;--tone-danger-on-solid:#ffffff;--tone-danger-soft:color-mix(in oklab, #e08a8f 16%, transparent);--tone-danger-soft-hover:color-mix(in oklab, #e08a8f 24%, transparent);--tone-danger-on-soft:#e9a1a5;--tone-danger-border:color-mix(in oklab, #e08a8f 40%, transparent);--tone-danger-text:#e9a1a5;--accent-glow:#b5e6dc;--selected-bg:var(--tone-accent-soft);--selected-bg-hover:var(--tone-accent-soft-hover);--selected-fg:var(--tone-accent-on-soft);--selected-border:var(--tone-accent-border);--selected-solid:var(--tone-accent-solid);--selected-solid-fg:var(--tone-accent-on-solid);--shadow-color:color-mix(in oklab, #000 45%, transparent);--shadow-color-strong:color-mix(in oklab, #000 62%, transparent);--shadow-sm:0 1px 0 rgba(238, 245, 243, 0.03) inset, 0 2px 8px rgba(0, 0, 0, 0.35);--shadow-md:0 14px 34px -16px rgba(0, 0, 0, 0.7);--shadow-lg:0 28px 70px rgba(0, 0, 0, 0.6);--scrim:color-mix(in oklab, #eef5f3 45%, transparent);--body-background:var(--canvas-layers), var(--surface-canvas);--body-background-base:var(--surface-canvas);--body-background-wash:var(--canvas-layers), var(--surface-canvas);--body-background-glow:none;--body-color:var(--text-default);--body-color-accent:var(--text-strong);--body-color-muted:var(--text-muted);--body-title-color:var(--text-strong);--body-sub-title-color:var(--text-soft);--body-accent-color:var(--tone-accent-text);--body-danger-color:var(--tone-danger-text);--backdrop-color:var(--scrim);--box-shadow:var(--shadow-color);--text-shadow:var(--shadow-color);--border-color:var(--border-strong);--delimiter-color:var(--border-subtle);--links-color:var(--text-link);--links-hover-color:var(--text-link-hover);--font-family:var(--font-body);--font-family-sans:var(--font-body);--font-family-display:var(--font-display);--font-family-mono:var(--font-mono);--header-background-color:var(--surface-raised);--header-border-bottom-color:var(--border-subtle);--header-color:var(--text-strong);--header-font-weight:var(--header-weight);--button-default-background-color:var(--button-fill);--button-default-border-color:var(--border-default);--button-default-color:var(--text-default);--button-default-hover-background-color:var(--control-hover);--button-default-hover-border-color:var(--field-border-hover);--button-default-hover-color:var(--text-strong);--button-ghost-background-color:transparent;--button-ghost-border-color:transparent;--button-ghost-color:var(--text-soft);--button-ghost-hover-background-color:var(--control-hover);--button-ghost-hover-border-color:transparent;--button-ghost-hover-color:var(--text-strong);--button-plain-color:var(--text-soft);--button-plain-hover-color:var(--text-strong);--button-info-background-color:var(--tone-accent-solid);--button-info-border-color:var(--tone-accent-mark);--button-info-color:var(--tone-accent-on-solid);--button-info-hover-background-color:var(--tone-accent-solid-hover);--button-info-hover-border-color:var(--tone-accent-mark);--button-info-hover-color:var(--tone-accent-on-solid);--toast-info-background-color:var(--tone-accent-soft);--toast-info-border-color:var(--tone-accent-border);--toast-info-color:var(--tone-accent-on-soft);--progress-info-bar-border-color:var(--tone-accent-mark);--progress-info-bar-fill-color:var(--tone-accent-mark);--rating-color-info:var(--tone-accent-mark);--card-tint-info-background:var(--tone-accent-soft);--button-success-background-color:var(--tone-success-solid);--button-success-border-color:var(--tone-success-mark);--button-success-color:var(--tone-success-on-solid);--button-success-hover-background-color:var(--tone-success-solid-hover);--button-success-hover-border-color:var(--tone-success-mark);--button-success-hover-color:var(--tone-success-on-solid);--toast-success-background-color:var(--tone-success-soft);--toast-success-border-color:var(--tone-success-border);--toast-success-color:var(--tone-success-on-soft);--progress-success-bar-border-color:var(--tone-success-mark);--progress-success-bar-fill-color:var(--tone-success-mark);--rating-color-success:var(--tone-success-mark);--card-tint-success-background:var(--tone-success-soft);--button-warning-background-color:var(--tone-warning-solid);--button-warning-border-color:var(--tone-warning-mark);--button-warning-color:var(--tone-warning-on-solid);--button-warning-hover-background-color:var(--tone-warning-solid-hover);--button-warning-hover-border-color:var(--tone-warning-mark);--button-warning-hover-color:var(--tone-warning-on-solid);--toast-warning-background-color:var(--tone-warning-soft);--toast-warning-border-color:var(--tone-warning-border);--toast-warning-color:var(--tone-warning-on-soft);--progress-warning-bar-border-color:var(--tone-warning-mark);--progress-warning-bar-fill-color:var(--tone-warning-mark);--rating-color-warning:var(--tone-warning-mark);--card-tint-warning-background:var(--tone-warning-soft);--button-danger-background-color:var(--tone-danger-solid);--button-danger-border-color:var(--tone-danger-mark);--button-danger-color:var(--tone-danger-on-solid);--button-danger-hover-background-color:var(--tone-danger-solid-hover);--button-danger-hover-border-color:var(--tone-danger-mark);--button-danger-hover-color:var(--tone-danger-on-solid);--toast-danger-background-color:var(--tone-danger-soft);--toast-danger-border-color:var(--tone-danger-border);--toast-danger-color:var(--tone-danger-on-soft);--progress-danger-bar-border-color:var(--tone-danger-mark);--progress-danger-bar-fill-color:var(--tone-danger-mark);--rating-color-danger:var(--tone-danger-mark);--card-tint-danger-background:var(--tone-danger-soft);--progress-bar-background-color:var(--surface-sunken);--progress-bar-color:var(--text-default);--progress-default-bar-border-color:var(--border-strong);--progress-default-bar-fill-color:var(--text-muted);--rating-empty-color:var(--rating-empty);--rating-empty-label-color:var(--text-muted);--rating-half-rate-empty-color:var(--rating-empty);--card-tint-default-background:var(--surface-raised-alt);--card-accent-color:var(--tone-accent-text);--card-backdrop-filter:var(--surface-blur);--card-background-accent-color:var(--surface-raised-alt);--card-background-color:var(--surface-card);--card-border-accent-color:var(--tone-accent-mark);--card-border-color:var(--border-card);--card-box-shadow:var(--shadow-md);--card-color:var(--text-default);--card-footer-background-color:var(--surface-raised-alt);--card-footer-color:var(--text-soft);--card-hover-border-color:var(--border-card-hover);--card-surface-box-shadow:var(--shadow-sm);--card-title-color:var(--text-strong);--card-title-font-family:var(--font-display);--card-title-font-size:var(--display-size);--card-title-font-style:var(--display-style);--card-title-font-weight:var(--display-weight);--card-title-letter-spacing:var(--display-tracking);--card-title-text-transform:var(--display-transform);--modal-backdrop-filter:var(--surface-blur);--modal-background-color:var(--surface-overlay-card);--modal-body-color:var(--text-default);--modal-border-color:var(--border-card);--modal-box-shadow:var(--shadow-lg);--modal-box-shadow-hover:var(--shadow-lg);--modal-color:var(--text-default);--modal-footer-background-color:var(--surface-raised-alt);--modal-header-background-color:var(--surface-raised-alt);--modal-header-color:var(--text-strong);--modal-surface-box-shadow:var(--shadow-lg);--modal-title-color:var(--text-strong);--modal-title-font-family:var(--font-display);--modal-title-font-size:var(--font-size-xl);--modal-title-font-style:normal;--modal-title-font-weight:400;--modal-title-letter-spacing:normal;--modal-title-text-transform:none;--drawer-background-color:var(--surface-overlay-card);--drawer-header-background-color:var(--surface-raised-alt);--drawer-border-color:var(--border-card);--drawer-shadow:var(--shadow-lg);--form-control-background-color:var(--field-bg);--form-control-border-color:var(--field-border);--form-control-color:var(--field-fg);--form-control-focus-background-color:var(--field-bg-focus);--form-control-focus-border-color:var(--field-border-focus);--form-control-focus-color:var(--field-fg);--form-control-focus-ring:var(--field-ring);--form-control-error-background-color:color-mix(in oklab, var(--tone-danger-solid) 6%, var(--field-bg));--form-control-error-border-color:var(--tone-danger-mark);--form-control-error-color:var(--tone-danger-text);--form-control-success-background-color:color-mix(in oklab, var(--tone-success-solid) 7%, var(--field-bg));--form-control-success-border-color:var(--tone-success-mark);--form-control-success-color:var(--tone-success-text);--form-control-font-family:var(--font-body);--form-control-label-color:var(--field-label);--form-control-label-font-size:var(--font-size-xs);--form-control-label-font-weight:var(--label-weight);--form-control-label-letter-spacing:var(--label-tracking);--form-control-label-text-transform:var(--label-transform);--form-control-placeholder-color:var(--field-placeholder);--form-control-selection-background-color:var(--selected-solid);--form-control-selection-border-color:var(--selected-solid);--form-control-selection-color:var(--selected-solid-fg);--form-control-selection-label-color:var(--text-default);--datepicker-input-background-color:var(--field-bg);--dropdown-border-color:var(--field-border);--dropdown-header-background-color:var(--field-bg);--dropdown-header-border-focus-color:var(--field-border-focus);--dropdown-header-color:var(--field-fg);--dropdown-options-background-color:var(--surface-overlay);--dropdown-options-color:var(--text-default);--dropdown-options-hover-background-color:var(--surface-hover);--dropdown-options-hover-color:var(--text-strong);--dropdown-options-selected-background-color:var(--surface-selected);--dropdown-options-selected-color:var(--text-strong);--dropdown-action-background-color:var(--surface-raised-alt);--dropdown-action-color:var(--text-link);--dropdown-action-hover-background-color:var(--surface-hover);--dropdown-action-hover-color:var(--text-link-hover);--dropdown-chips-background-color:var(--selected-bg);--dropdown-chips-border-color:var(--selected-border);--dropdown-chips-color:var(--selected-fg);--dropdown-chips-hover-background-color:var(--selected-bg-hover);--slider-track-background-color:var(--surface-sunken);--slider-track-border-color:var(--field-border);--slider-track-hover-background-color:var(--control-hover);--slider-track-hover-border-color:var(--field-border-hover);--slider-thumb-background-color:var(--tone-accent-mark);--slider-thumb-border-color:var(--tone-accent-mark);--slider-thumb-hover-background-color:var(--tone-accent-solid-hover);--slider-thumb-hover-border-color:var(--tone-accent-solid-hover);--calendar-background-color:var(--surface-overlay);--calendar-border-color:var(--border-default);--calendar-day-color:var(--text-soft);--calendar-day-disabled-color:var(--text-subtle);--calendar-day-hover-background-color:var(--control-hover);--calendar-day-selected-background-color:var(--tone-accent-solid);--calendar-day-selected-color:var(--tone-accent-on-solid);--calendar-day-today-border-color:var(--tone-accent-mark);--calendar-day-weekend-color:var(--text-muted);--calendar-header-background-color:var(--surface-raised-alt);--calendar-header-color:var(--text-strong);--chip-hover-background-color:var(--surface-hover);--chip-hover-border-color:var(--border-strong);--chip-hover-color:var(--text-strong);--chip-selected-background-color:var(--selected-bg);--chip-selected-border-color:var(--selected-border);--chip-selected-color:var(--selected-fg);--chip-selected-count-color:color-mix(in oklab, var(--selected-fg) 72%, transparent);--list-alternate-background-color:var(--surface-stripe);--list-hover-background-color:var(--surface-hover);--tabs-active-background-color:var(--selected-bg);--tabs-active-color:var(--selected-fg);--tabs-inactive-background-color:transparent;--tabs-inactive-color:var(--text-muted);--tooltip-background-color:var(--tone-neutral-solid);--tooltip-border-color:var(--tone-neutral-solid);--tooltip-color:var(--tone-neutral-on-solid);--popover-background-color:var(--surface-overlay);--popover-border-color:var(--border-default);--popover-color:var(--text-default);--popover-arrow-color:var(--border-default);--loader-border-color:var(--tone-accent-soft);--loader-border-top-color:var(--tone-accent-mark);--tour-hud-accent-color:var(--tone-accent-mark);--note-container-effect-background-color:var(--tone-accent-soft);--note-container-effect-color:var(--tone-accent-on-soft);--note-container-effect-border-left-color:var(--tone-accent-mark);--glow-box-shadow-color:0 0 16px color-mix(in oklab, var(--tone-accent-mark) 45%, transparent);--glow-hover-border-color:var(--tone-accent-border);--infuse-effect-before-background:linear-gradient(90deg, var(--tone-accent-mark), var(--accent-glow));--infuse-effect-hover-border-color:var(--tone-accent-mark);--infuse-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent);--up-lift-effect-before-background:linear-gradient(135deg, var(--tone-accent-mark), var(--accent-glow));--up-lift-effect-box-shadow-color:var(--shadow-color-strong);--up-lift-effect-hover-border-color:var(--tone-accent-mark);--up-lift-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent)}
|
|
2
|
+
/*
|
|
3
|
+
* Component recipes for the authored themes. Badge and Chip take a tone and one shared set
|
|
4
|
+
* of roles (soft background, ink on soft, border), so a "success" badge, a selected
|
|
5
|
+
* "success" chip and a success toast carry the same three colours.
|
|
6
|
+
*
|
|
7
|
+
* These rules sit here rather than in @memobit/libs while the classic themes still drive
|
|
8
|
+
* the same components. Once the classic themes are retired they move into the lib.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
[data-theme='impulse-still-water'] .badge-variant--default {
|
|
12
|
+
--recipe-soft: var(--tone-neutral-soft);
|
|
13
|
+
--recipe-soft-hover: var(--tone-neutral-soft-hover);
|
|
14
|
+
--recipe-on-soft: var(--tone-neutral-on-soft);
|
|
15
|
+
--recipe-border: var(--tone-neutral-border);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
[data-theme='impulse-still-water'] :is(.badge-variant--info, .chip--info) {
|
|
19
|
+
--recipe-soft: var(--tone-accent-soft);
|
|
20
|
+
--recipe-soft-hover: var(--tone-accent-soft-hover);
|
|
21
|
+
--recipe-on-soft: var(--tone-accent-on-soft);
|
|
22
|
+
--recipe-border: var(--tone-accent-border);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-theme='impulse-still-water'] :is(.badge-variant--success, .chip--success) {
|
|
26
|
+
--recipe-soft: var(--tone-success-soft);
|
|
27
|
+
--recipe-soft-hover: var(--tone-success-soft-hover);
|
|
28
|
+
--recipe-on-soft: var(--tone-success-on-soft);
|
|
29
|
+
--recipe-border: var(--tone-success-border);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
[data-theme='impulse-still-water'] :is(.badge-variant--warning, .chip--warning) {
|
|
33
|
+
--recipe-soft: var(--tone-warning-soft);
|
|
34
|
+
--recipe-soft-hover: var(--tone-warning-soft-hover);
|
|
35
|
+
--recipe-on-soft: var(--tone-warning-on-soft);
|
|
36
|
+
--recipe-border: var(--tone-warning-border);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
[data-theme='impulse-still-water'] :is(.badge-variant--danger, .chip--danger) {
|
|
40
|
+
--recipe-soft: var(--tone-danger-soft);
|
|
41
|
+
--recipe-soft-hover: var(--tone-danger-soft-hover);
|
|
42
|
+
--recipe-on-soft: var(--tone-danger-on-soft);
|
|
43
|
+
--recipe-border: var(--tone-danger-border);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
[data-theme='impulse-still-water']
|
|
47
|
+
.badge:is(.badge-variant--default, .badge-variant--info, .badge-variant--success, .badge-variant--warning, .badge-variant--danger) {
|
|
48
|
+
border-color: var(--recipe-border);
|
|
49
|
+
background-color: var(--recipe-soft);
|
|
50
|
+
color: var(--recipe-on-soft);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
[data-theme='impulse-still-water'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger) {
|
|
54
|
+
border-color: var(--border-default);
|
|
55
|
+
background: transparent;
|
|
56
|
+
color: var(--text-default);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
[data-theme='impulse-still-water'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger):hover:not(:disabled) {
|
|
60
|
+
border-color: var(--recipe-border);
|
|
61
|
+
background: var(--surface-hover);
|
|
62
|
+
color: var(--text-strong);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
[data-theme='impulse-still-water'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected {
|
|
66
|
+
border-color: var(--recipe-border);
|
|
67
|
+
background: var(--recipe-soft);
|
|
68
|
+
color: var(--recipe-on-soft);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[data-theme='impulse-still-water'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected:hover:not(:disabled) {
|
|
72
|
+
border-color: var(--recipe-border);
|
|
73
|
+
background: var(--recipe-soft-hover);
|
|
74
|
+
color: var(--recipe-on-soft);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* A default chip carries no tone, so its selected state is the theme's selection style. */
|
|
78
|
+
[data-theme='impulse-still-water'] .chip.chip--default {
|
|
79
|
+
--recipe-soft: var(--selected-bg);
|
|
80
|
+
--recipe-soft-hover: var(--selected-bg-hover);
|
|
81
|
+
--recipe-on-soft: var(--selected-fg);
|
|
82
|
+
--recipe-border: var(--selected-border);
|
|
83
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
[data-theme='nutritrack-fresh-market']{color-scheme:light;--font-body:'Outfit', 'Inter', sans-serif;--font-display:'Bricolage Grotesque', 'Outfit', sans-serif;--font-mono:ui-monospace, SFMono-Regular, 'JetBrains Mono', Menlo, Consolas, monospace;--display-style:normal;--display-weight:700;--display-size:var(--font-size-md);--display-transform:none;--display-tracking:-0.01em;--label-weight:500;--label-transform:none;--label-tracking:normal;--header-weight:600;--canvas-layers:radial-gradient(55% 50% at 100% 0%, rgba(52, 199, 89, 0.1) 0%, transparent 65%), radial-gradient(45% 45% at 0% 100%, rgba(251, 179, 64, 0.11) 0%, transparent 65%);--surface-canvas:#f3f7f0;--surface-card:#ffffff;--surface-raised:#ffffff;--surface-raised-alt:#f2f7f1;--surface-overlay:#ffffff;--button-fill:#ffffff;--surface-overlay-card:#ffffff;--surface-sunken:#dfe9de;--control-hover:#e7f0e6;--surface-hover:color-mix(in oklab, #2f9e55 8%, transparent);--surface-stripe:#f7faf6;--rating-empty:color-mix(in oklab, #dfe9de 85%, #0f1d14);--surface-selected:color-mix(in oklab, #2f9e55 18%, transparent);--surface-blur:none;--text-strong:#0f1d14;--text-default:#1f3126;--text-soft:#3a4d41;--text-muted:#55665b;--text-subtle:#83928a;--text-link:#1b6d36;--text-link-hover:#124d26;--border-subtle:rgba(15, 29, 20, 0.08);--border-default:rgba(15, 29, 20, 0.14);--border-strong:rgba(15, 29, 20, 0.14);--border-card:rgba(15, 29, 20, 0.09);--border-card-hover:rgba(31, 122, 61, 0.4);--field-bg:#ffffff;--field-bg-focus:#ffffff;--field-bg-disabled:color-mix(in oklab, #ffffff 94%, #0f1d14);--field-fg:#1f3126;--field-border:rgba(15, 29, 20, 0.2);--field-border-hover:#1f7a3d;--field-border-focus:#2f9e55;--field-placeholder:#83928a;--field-label:#55665b;--field-ring:color-mix(in oklab, #2f9e55 24%, transparent);--tone-neutral-solid:#0f1d14;--tone-neutral-solid-hover:color-mix(in oklab, #0f1d14 70%, #1f3126);--tone-neutral-on-solid:#ffffff;--tone-neutral-soft:#e7f0e6;--tone-neutral-soft-hover:color-mix(in oklab, #e7f0e6 92%, #0f1d14);--tone-neutral-on-soft:#0f1d14;--tone-neutral-border:rgba(15, 29, 20, 0.14);--tone-neutral-text:#3a4d41;--tone-accent-solid:#1f7a3d;--tone-accent-mark:#2f9e55;--tone-accent-solid-hover:#18642f;--tone-accent-on-solid:#ffffff;--tone-accent-soft:color-mix(in oklab, #2f9e55 16%, transparent);--tone-accent-soft-hover:color-mix(in oklab, #2f9e55 24%, transparent);--tone-accent-on-soft:#1b6d36;--tone-accent-border:color-mix(in oklab, #2f9e55 40%, transparent);--tone-accent-text:#1b6d36;--tone-success-solid:#0f7668;--tone-success-mark:#14a08c;--tone-success-solid-hover:#0b5f54;--tone-success-on-solid:#ffffff;--tone-success-soft:color-mix(in oklab, #14a08c 16%, transparent);--tone-success-soft-hover:color-mix(in oklab, #14a08c 24%, transparent);--tone-success-on-soft:#0d6a5d;--tone-success-border:color-mix(in oklab, #14a08c 40%, transparent);--tone-success-text:#0d6a5d;--tone-warning-solid:#b45309;--tone-warning-mark:#f59e0b;--tone-warning-solid-hover:#92400e;--tone-warning-on-solid:#ffffff;--tone-warning-soft:color-mix(in oklab, #f59e0b 16%, transparent);--tone-warning-soft-hover:color-mix(in oklab, #f59e0b 24%, transparent);--tone-warning-on-soft:#9a4708;--tone-warning-border:color-mix(in oklab, #f59e0b 40%, transparent);--tone-warning-text:#9a4708;--tone-danger-solid:#c0283f;--tone-danger-mark:#e5485f;--tone-danger-solid-hover:#a11f34;--tone-danger-on-solid:#ffffff;--tone-danger-soft:color-mix(in oklab, #e5485f 16%, transparent);--tone-danger-soft-hover:color-mix(in oklab, #e5485f 24%, transparent);--tone-danger-on-soft:#b0243a;--tone-danger-border:color-mix(in oklab, #e5485f 40%, transparent);--tone-danger-text:#b0243a;--accent-glow:#5fd98a;--selected-bg:var(--tone-accent-solid);--selected-bg-hover:var(--tone-accent-solid-hover);--selected-fg:var(--tone-accent-on-solid);--selected-border:var(--tone-accent-solid);--selected-solid:var(--tone-accent-solid);--selected-solid-fg:var(--tone-accent-on-solid);--shadow-color:color-mix(in oklab, color-mix(in oklab, #0f1d14 40%, transparent) 45%, transparent);--shadow-color-strong:color-mix(in oklab, color-mix(in oklab, #0f1d14 40%, transparent) 62%, transparent);--shadow-sm:0 1px 2px rgba(15, 29, 20, 0.06);--shadow-md:0 1px 2px rgba(15, 29, 20, 0.06), 0 10px 26px -14px rgba(15, 29, 20, 0.2);--shadow-lg:0 24px 60px rgba(15, 29, 20, 0.2);--scrim:color-mix(in oklab, #0f1d14 45%, transparent);--body-background:var(--canvas-layers), var(--surface-canvas);--body-background-base:var(--surface-canvas);--body-background-wash:var(--canvas-layers), var(--surface-canvas);--body-background-glow:none;--body-color:var(--text-default);--body-color-accent:var(--text-strong);--body-color-muted:var(--text-muted);--body-title-color:var(--text-strong);--body-sub-title-color:var(--text-soft);--body-accent-color:var(--tone-accent-text);--body-danger-color:var(--tone-danger-text);--backdrop-color:var(--scrim);--box-shadow:var(--shadow-color);--text-shadow:var(--shadow-color);--border-color:var(--border-strong);--delimiter-color:var(--border-subtle);--links-color:var(--text-link);--links-hover-color:var(--text-link-hover);--font-family:var(--font-body);--font-family-sans:var(--font-body);--font-family-display:var(--font-display);--font-family-mono:var(--font-mono);--header-background-color:var(--surface-raised);--header-border-bottom-color:var(--border-subtle);--header-color:var(--text-strong);--header-font-weight:var(--header-weight);--button-default-background-color:var(--button-fill);--button-default-border-color:var(--border-default);--button-default-color:var(--text-default);--button-default-hover-background-color:var(--control-hover);--button-default-hover-border-color:var(--field-border-hover);--button-default-hover-color:var(--text-strong);--button-ghost-background-color:transparent;--button-ghost-border-color:transparent;--button-ghost-color:var(--text-soft);--button-ghost-hover-background-color:var(--control-hover);--button-ghost-hover-border-color:transparent;--button-ghost-hover-color:var(--text-strong);--button-plain-color:var(--text-soft);--button-plain-hover-color:var(--text-strong);--button-info-background-color:var(--tone-accent-solid);--button-info-border-color:var(--tone-accent-mark);--button-info-color:var(--tone-accent-on-solid);--button-info-hover-background-color:var(--tone-accent-solid-hover);--button-info-hover-border-color:var(--tone-accent-mark);--button-info-hover-color:var(--tone-accent-on-solid);--toast-info-background-color:var(--tone-accent-soft);--toast-info-border-color:var(--tone-accent-border);--toast-info-color:var(--tone-accent-on-soft);--progress-info-bar-border-color:var(--tone-accent-mark);--progress-info-bar-fill-color:var(--tone-accent-mark);--rating-color-info:var(--tone-accent-mark);--card-tint-info-background:var(--tone-accent-soft);--button-success-background-color:var(--tone-success-solid);--button-success-border-color:var(--tone-success-mark);--button-success-color:var(--tone-success-on-solid);--button-success-hover-background-color:var(--tone-success-solid-hover);--button-success-hover-border-color:var(--tone-success-mark);--button-success-hover-color:var(--tone-success-on-solid);--toast-success-background-color:var(--tone-success-soft);--toast-success-border-color:var(--tone-success-border);--toast-success-color:var(--tone-success-on-soft);--progress-success-bar-border-color:var(--tone-success-mark);--progress-success-bar-fill-color:var(--tone-success-mark);--rating-color-success:var(--tone-success-mark);--card-tint-success-background:var(--tone-success-soft);--button-warning-background-color:var(--tone-warning-solid);--button-warning-border-color:var(--tone-warning-mark);--button-warning-color:var(--tone-warning-on-solid);--button-warning-hover-background-color:var(--tone-warning-solid-hover);--button-warning-hover-border-color:var(--tone-warning-mark);--button-warning-hover-color:var(--tone-warning-on-solid);--toast-warning-background-color:var(--tone-warning-soft);--toast-warning-border-color:var(--tone-warning-border);--toast-warning-color:var(--tone-warning-on-soft);--progress-warning-bar-border-color:var(--tone-warning-mark);--progress-warning-bar-fill-color:var(--tone-warning-mark);--rating-color-warning:var(--tone-warning-mark);--card-tint-warning-background:var(--tone-warning-soft);--button-danger-background-color:var(--tone-danger-solid);--button-danger-border-color:var(--tone-danger-mark);--button-danger-color:var(--tone-danger-on-solid);--button-danger-hover-background-color:var(--tone-danger-solid-hover);--button-danger-hover-border-color:var(--tone-danger-mark);--button-danger-hover-color:var(--tone-danger-on-solid);--toast-danger-background-color:var(--tone-danger-soft);--toast-danger-border-color:var(--tone-danger-border);--toast-danger-color:var(--tone-danger-on-soft);--progress-danger-bar-border-color:var(--tone-danger-mark);--progress-danger-bar-fill-color:var(--tone-danger-mark);--rating-color-danger:var(--tone-danger-mark);--card-tint-danger-background:var(--tone-danger-soft);--progress-bar-background-color:var(--surface-sunken);--progress-bar-color:var(--text-default);--progress-default-bar-border-color:var(--border-strong);--progress-default-bar-fill-color:var(--text-muted);--rating-empty-color:var(--rating-empty);--rating-empty-label-color:var(--text-muted);--rating-half-rate-empty-color:var(--rating-empty);--card-tint-default-background:var(--surface-raised-alt);--card-accent-color:var(--tone-accent-text);--card-backdrop-filter:var(--surface-blur);--card-background-accent-color:var(--surface-raised-alt);--card-background-color:var(--surface-card);--card-border-accent-color:var(--tone-accent-mark);--card-border-color:var(--border-card);--card-box-shadow:var(--shadow-md);--card-color:var(--text-default);--card-footer-background-color:var(--surface-raised-alt);--card-footer-color:var(--text-soft);--card-hover-border-color:var(--border-card-hover);--card-surface-box-shadow:var(--shadow-sm);--card-title-color:var(--text-strong);--card-title-font-family:var(--font-display);--card-title-font-size:var(--display-size);--card-title-font-style:var(--display-style);--card-title-font-weight:var(--display-weight);--card-title-letter-spacing:var(--display-tracking);--card-title-text-transform:var(--display-transform);--modal-backdrop-filter:var(--surface-blur);--modal-background-color:var(--surface-overlay-card);--modal-body-color:var(--text-default);--modal-border-color:var(--border-card);--modal-box-shadow:var(--shadow-lg);--modal-box-shadow-hover:var(--shadow-lg);--modal-color:var(--text-default);--modal-footer-background-color:var(--surface-raised-alt);--modal-header-background-color:var(--surface-raised-alt);--modal-header-color:var(--text-strong);--modal-surface-box-shadow:var(--shadow-lg);--modal-title-color:var(--text-strong);--modal-title-font-family:var(--font-display);--modal-title-font-size:var(--font-size-lg);--modal-title-font-style:normal;--modal-title-font-weight:700;--modal-title-letter-spacing:-0.01em;--modal-title-text-transform:none;--drawer-background-color:var(--surface-overlay-card);--drawer-header-background-color:var(--surface-raised-alt);--drawer-border-color:var(--border-card);--drawer-shadow:var(--shadow-lg);--form-control-background-color:var(--field-bg);--form-control-border-color:var(--field-border);--form-control-color:var(--field-fg);--form-control-focus-background-color:var(--field-bg-focus);--form-control-focus-border-color:var(--field-border-focus);--form-control-focus-color:var(--field-fg);--form-control-focus-ring:var(--field-ring);--form-control-error-background-color:color-mix(in oklab, var(--tone-danger-solid) 6%, var(--field-bg));--form-control-error-border-color:var(--tone-danger-mark);--form-control-error-color:var(--tone-danger-text);--form-control-success-background-color:color-mix(in oklab, var(--tone-success-solid) 7%, var(--field-bg));--form-control-success-border-color:var(--tone-success-mark);--form-control-success-color:var(--tone-success-text);--form-control-font-family:var(--font-body);--form-control-label-color:var(--field-label);--form-control-label-font-size:var(--font-size-xs);--form-control-label-font-weight:var(--label-weight);--form-control-label-letter-spacing:var(--label-tracking);--form-control-label-text-transform:var(--label-transform);--form-control-placeholder-color:var(--field-placeholder);--form-control-selection-background-color:var(--selected-solid);--form-control-selection-border-color:var(--selected-solid);--form-control-selection-color:var(--selected-solid-fg);--form-control-selection-label-color:var(--text-default);--datepicker-input-background-color:var(--field-bg);--dropdown-border-color:var(--field-border);--dropdown-header-background-color:var(--field-bg);--dropdown-header-border-focus-color:var(--field-border-focus);--dropdown-header-color:var(--field-fg);--dropdown-options-background-color:var(--surface-overlay);--dropdown-options-color:var(--text-default);--dropdown-options-hover-background-color:var(--surface-hover);--dropdown-options-hover-color:var(--text-strong);--dropdown-options-selected-background-color:var(--surface-selected);--dropdown-options-selected-color:var(--text-strong);--dropdown-action-background-color:var(--surface-raised-alt);--dropdown-action-color:var(--text-link);--dropdown-action-hover-background-color:var(--surface-hover);--dropdown-action-hover-color:var(--text-link-hover);--dropdown-chips-background-color:var(--selected-bg);--dropdown-chips-border-color:var(--selected-border);--dropdown-chips-color:var(--selected-fg);--dropdown-chips-hover-background-color:var(--selected-bg-hover);--slider-track-background-color:var(--surface-sunken);--slider-track-border-color:var(--field-border);--slider-track-hover-background-color:var(--control-hover);--slider-track-hover-border-color:var(--field-border-hover);--slider-thumb-background-color:var(--tone-accent-mark);--slider-thumb-border-color:var(--tone-accent-mark);--slider-thumb-hover-background-color:var(--tone-accent-solid-hover);--slider-thumb-hover-border-color:var(--tone-accent-solid-hover);--calendar-background-color:var(--surface-overlay);--calendar-border-color:var(--border-default);--calendar-day-color:var(--text-soft);--calendar-day-disabled-color:var(--text-subtle);--calendar-day-hover-background-color:var(--control-hover);--calendar-day-selected-background-color:var(--tone-accent-solid);--calendar-day-selected-color:var(--tone-accent-on-solid);--calendar-day-today-border-color:var(--tone-accent-mark);--calendar-day-weekend-color:var(--text-muted);--calendar-header-background-color:var(--surface-raised-alt);--calendar-header-color:var(--text-strong);--chip-hover-background-color:var(--surface-hover);--chip-hover-border-color:var(--border-strong);--chip-hover-color:var(--text-strong);--chip-selected-background-color:var(--selected-bg);--chip-selected-border-color:var(--selected-border);--chip-selected-color:var(--selected-fg);--chip-selected-count-color:color-mix(in oklab, var(--selected-fg) 72%, transparent);--list-alternate-background-color:var(--surface-stripe);--list-hover-background-color:var(--surface-hover);--tabs-active-background-color:var(--selected-bg);--tabs-active-color:var(--selected-fg);--tabs-inactive-background-color:transparent;--tabs-inactive-color:var(--text-muted);--tooltip-background-color:var(--tone-neutral-solid);--tooltip-border-color:var(--tone-neutral-solid);--tooltip-color:var(--tone-neutral-on-solid);--popover-background-color:var(--surface-overlay);--popover-border-color:var(--border-default);--popover-color:var(--text-default);--popover-arrow-color:var(--border-default);--loader-border-color:var(--tone-accent-soft);--loader-border-top-color:var(--tone-accent-mark);--tour-hud-accent-color:var(--tone-accent-mark);--note-container-effect-background-color:var(--tone-accent-soft);--note-container-effect-color:var(--tone-accent-on-soft);--note-container-effect-border-left-color:var(--tone-accent-mark);--glow-box-shadow-color:0 0 16px color-mix(in oklab, var(--tone-accent-mark) 45%, transparent);--glow-hover-border-color:var(--tone-accent-border);--infuse-effect-before-background:linear-gradient(90deg, var(--tone-accent-mark), var(--accent-glow));--infuse-effect-hover-border-color:var(--tone-accent-mark);--infuse-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent);--up-lift-effect-before-background:linear-gradient(135deg, var(--tone-accent-mark), var(--accent-glow));--up-lift-effect-box-shadow-color:var(--shadow-color-strong);--up-lift-effect-hover-border-color:var(--tone-accent-mark);--up-lift-effect-hover-box-shadow-color:color-mix(in oklab, var(--tone-accent-mark) 35%, transparent)}
|
|
2
|
+
/*
|
|
3
|
+
* Component recipes for the authored themes. Badge and Chip take a tone and one shared set
|
|
4
|
+
* of roles (soft background, ink on soft, border), so a "success" badge, a selected
|
|
5
|
+
* "success" chip and a success toast carry the same three colours.
|
|
6
|
+
*
|
|
7
|
+
* These rules sit here rather than in @memobit/libs while the classic themes still drive
|
|
8
|
+
* the same components. Once the classic themes are retired they move into the lib.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
[data-theme='nutritrack-fresh-market'] .badge-variant--default {
|
|
12
|
+
--recipe-soft: var(--tone-neutral-soft);
|
|
13
|
+
--recipe-soft-hover: var(--tone-neutral-soft-hover);
|
|
14
|
+
--recipe-on-soft: var(--tone-neutral-on-soft);
|
|
15
|
+
--recipe-border: var(--tone-neutral-border);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
[data-theme='nutritrack-fresh-market'] :is(.badge-variant--info, .chip--info) {
|
|
19
|
+
--recipe-soft: var(--tone-accent-soft);
|
|
20
|
+
--recipe-soft-hover: var(--tone-accent-soft-hover);
|
|
21
|
+
--recipe-on-soft: var(--tone-accent-on-soft);
|
|
22
|
+
--recipe-border: var(--tone-accent-border);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-theme='nutritrack-fresh-market'] :is(.badge-variant--success, .chip--success) {
|
|
26
|
+
--recipe-soft: var(--tone-success-soft);
|
|
27
|
+
--recipe-soft-hover: var(--tone-success-soft-hover);
|
|
28
|
+
--recipe-on-soft: var(--tone-success-on-soft);
|
|
29
|
+
--recipe-border: var(--tone-success-border);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
[data-theme='nutritrack-fresh-market'] :is(.badge-variant--warning, .chip--warning) {
|
|
33
|
+
--recipe-soft: var(--tone-warning-soft);
|
|
34
|
+
--recipe-soft-hover: var(--tone-warning-soft-hover);
|
|
35
|
+
--recipe-on-soft: var(--tone-warning-on-soft);
|
|
36
|
+
--recipe-border: var(--tone-warning-border);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
[data-theme='nutritrack-fresh-market'] :is(.badge-variant--danger, .chip--danger) {
|
|
40
|
+
--recipe-soft: var(--tone-danger-soft);
|
|
41
|
+
--recipe-soft-hover: var(--tone-danger-soft-hover);
|
|
42
|
+
--recipe-on-soft: var(--tone-danger-on-soft);
|
|
43
|
+
--recipe-border: var(--tone-danger-border);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
[data-theme='nutritrack-fresh-market']
|
|
47
|
+
.badge:is(.badge-variant--default, .badge-variant--info, .badge-variant--success, .badge-variant--warning, .badge-variant--danger) {
|
|
48
|
+
border-color: var(--recipe-border);
|
|
49
|
+
background-color: var(--recipe-soft);
|
|
50
|
+
color: var(--recipe-on-soft);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
[data-theme='nutritrack-fresh-market'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger) {
|
|
54
|
+
border-color: var(--border-default);
|
|
55
|
+
background: transparent;
|
|
56
|
+
color: var(--text-default);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
[data-theme='nutritrack-fresh-market'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger):hover:not(:disabled) {
|
|
60
|
+
border-color: var(--recipe-border);
|
|
61
|
+
background: var(--surface-hover);
|
|
62
|
+
color: var(--text-strong);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
[data-theme='nutritrack-fresh-market'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected {
|
|
66
|
+
border-color: var(--recipe-border);
|
|
67
|
+
background: var(--recipe-soft);
|
|
68
|
+
color: var(--recipe-on-soft);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[data-theme='nutritrack-fresh-market'] .chip:is(.chip--default, .chip--info, .chip--success, .chip--warning, .chip--danger).chip--selected:hover:not(:disabled) {
|
|
72
|
+
border-color: var(--recipe-border);
|
|
73
|
+
background: var(--recipe-soft-hover);
|
|
74
|
+
color: var(--recipe-on-soft);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* A default chip carries no tone, so its selected state is the theme's selection style. */
|
|
78
|
+
[data-theme='nutritrack-fresh-market'] .chip.chip--default {
|
|
79
|
+
--recipe-soft: var(--selected-bg);
|
|
80
|
+
--recipe-soft-hover: var(--selected-bg-hover);
|
|
81
|
+
--recipe-on-soft: var(--selected-fg);
|
|
82
|
+
--recipe-border: var(--selected-border);
|
|
83
|
+
}
|