@amulet-laboratories/hex 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +120 -0
- package/dist/aldricpace.css +5 -0
- package/dist/briarcove.css +5 -0
- package/dist/briarcovelib.css +5 -0
- package/dist/compass.css +5 -0
- package/dist/duskline.css +5 -0
- package/dist/forge.css +5 -0
- package/dist/garden.css +5 -0
- package/dist/greyline.css +5 -0
- package/dist/hex.css +5 -0
- package/dist/kbcv.css +5 -0
- package/dist/lanternhouse.css +5 -0
- package/dist/marenlys.css +5 -0
- package/dist/quizbit.css +5 -0
- package/dist/saltsignal.css +5 -0
- package/dist/scoped.css +1 -0
- package/dist/spacewizard.css +5 -0
- package/dist/tidemark.css +5 -0
- package/dist/undertow.css +5 -0
- package/dist/vscode.css +5 -0
- package/package.json +119 -0
- package/src/index.css +10 -0
- package/src/scoped/bridge.css +47 -0
- package/src/scoped/index.css +51 -0
- package/src/scoped/themes/aldricpace.css +115 -0
- package/src/scoped/themes/briarcove.css +123 -0
- package/src/scoped/themes/briarcovelib.css +111 -0
- package/src/scoped/themes/compass.css +111 -0
- package/src/scoped/themes/duskline.css +117 -0
- package/src/scoped/themes/forge.css +123 -0
- package/src/scoped/themes/garden.css +123 -0
- package/src/scoped/themes/greyline.css +116 -0
- package/src/scoped/themes/kbcv.css +111 -0
- package/src/scoped/themes/lanternhouse.css +111 -0
- package/src/scoped/themes/marenlys.css +112 -0
- package/src/scoped/themes/quizbit.css +101 -0
- package/src/scoped/themes/saltsignal.css +114 -0
- package/src/scoped/themes/spacewizard.css +115 -0
- package/src/scoped/themes/tidemark.css +119 -0
- package/src/scoped/themes/undertow.css +113 -0
- package/src/scoped/themes/vscode.css +230 -0
- package/src/scoped/tokens.css +21 -0
- package/src/shared/a11y.css +175 -0
- package/src/shared/components/core.css +1654 -0
- package/src/shared/components/data.css +418 -0
- package/src/shared/components/editor.css +358 -0
- package/src/shared/components/extras.css +897 -0
- package/src/shared/components/layout.css +663 -0
- package/src/shared/components/lists.css +278 -0
- package/src/shared/components/menus.css +377 -0
- package/src/shared/components/nav.css +943 -0
- package/src/shared/components/prose.css +302 -0
- package/src/shared/components/shell.css +528 -0
- package/src/shared/components/spatial.css +184 -0
- package/src/shared/components/temporal.css +191 -0
- package/src/shared/components/web.css +1689 -0
- package/src/shared/rig-defaults.css +121 -0
- package/src/shared/scroll-animations.css +176 -0
- package/src/shared/tokens.css +125 -0
- package/src/shared/utilities.css +204 -0
- package/src/themes/aldricpace/base.css +114 -0
- package/src/themes/aldricpace/components.css +22 -0
- package/src/themes/aldricpace/domains.css +19 -0
- package/src/themes/aldricpace/index.css +6 -0
- package/src/themes/aldricpace/tokens.css +169 -0
- package/src/themes/andrewpassanisi/base.css +192 -0
- package/src/themes/andrewpassanisi/index.css +11 -0
- package/src/themes/andrewpassanisi/tokens.css +136 -0
- package/src/themes/briarcove/base.css +170 -0
- package/src/themes/briarcove/components.css +27 -0
- package/src/themes/briarcove/domains.css +72 -0
- package/src/themes/briarcove/index.css +6 -0
- package/src/themes/briarcove/tokens.css +179 -0
- package/src/themes/briarcovelib/base.css +111 -0
- package/src/themes/briarcovelib/components.css +22 -0
- package/src/themes/briarcovelib/domains.css +19 -0
- package/src/themes/briarcovelib/index.css +6 -0
- package/src/themes/briarcovelib/tokens.css +167 -0
- package/src/themes/compass/base.css +112 -0
- package/src/themes/compass/components.css +22 -0
- package/src/themes/compass/domains.css +19 -0
- package/src/themes/compass/index.css +6 -0
- package/src/themes/compass/tokens.css +167 -0
- package/src/themes/duskline/base.css +167 -0
- package/src/themes/duskline/components.css +27 -0
- package/src/themes/duskline/domains.css +72 -0
- package/src/themes/duskline/index.css +6 -0
- package/src/themes/duskline/tokens.css +171 -0
- package/src/themes/forge/base.css +165 -0
- package/src/themes/forge/components.css +24 -0
- package/src/themes/forge/domains.css +72 -0
- package/src/themes/forge/index.css +6 -0
- package/src/themes/forge/tokens.css +178 -0
- package/src/themes/garden/base.css +167 -0
- package/src/themes/garden/components.css +27 -0
- package/src/themes/garden/domains.css +72 -0
- package/src/themes/garden/index.css +6 -0
- package/src/themes/garden/tokens.css +178 -0
- package/src/themes/greyline/base.css +165 -0
- package/src/themes/greyline/components.css +24 -0
- package/src/themes/greyline/domains.css +70 -0
- package/src/themes/greyline/index.css +6 -0
- package/src/themes/greyline/tokens.css +161 -0
- package/src/themes/kbcv/base.css +112 -0
- package/src/themes/kbcv/components.css +22 -0
- package/src/themes/kbcv/domains.css +19 -0
- package/src/themes/kbcv/index.css +6 -0
- package/src/themes/kbcv/tokens.css +167 -0
- package/src/themes/lanternhouse/base.css +170 -0
- package/src/themes/lanternhouse/components.css +27 -0
- package/src/themes/lanternhouse/domains.css +72 -0
- package/src/themes/lanternhouse/index.css +6 -0
- package/src/themes/lanternhouse/tokens.css +167 -0
- package/src/themes/marenlys/base.css +181 -0
- package/src/themes/marenlys/components.css +27 -0
- package/src/themes/marenlys/domains.css +72 -0
- package/src/themes/marenlys/index.css +6 -0
- package/src/themes/marenlys/tokens.css +167 -0
- package/src/themes/quizbit/base.css +120 -0
- package/src/themes/quizbit/components.css +27 -0
- package/src/themes/quizbit/domains.css +7 -0
- package/src/themes/quizbit/index.css +6 -0
- package/src/themes/quizbit/tokens.css +132 -0
- package/src/themes/saltsignal/base.css +168 -0
- package/src/themes/saltsignal/components.css +27 -0
- package/src/themes/saltsignal/domains.css +72 -0
- package/src/themes/saltsignal/index.css +6 -0
- package/src/themes/saltsignal/tokens.css +170 -0
- package/src/themes/spacewizard/base.css +165 -0
- package/src/themes/spacewizard/components.css +24 -0
- package/src/themes/spacewizard/domains.css +70 -0
- package/src/themes/spacewizard/index.css +6 -0
- package/src/themes/spacewizard/tokens.css +160 -0
- package/src/themes/tidemark/base.css +169 -0
- package/src/themes/tidemark/components.css +27 -0
- package/src/themes/tidemark/domains.css +72 -0
- package/src/themes/tidemark/index.css +6 -0
- package/src/themes/tidemark/tokens.css +175 -0
- package/src/themes/undertow/base.css +114 -0
- package/src/themes/undertow/components.css +22 -0
- package/src/themes/undertow/domains.css +19 -0
- package/src/themes/undertow/index.css +6 -0
- package/src/themes/undertow/tokens.css +171 -0
- package/src/themes/vscode/base.css +104 -0
- package/src/themes/vscode/components.css +24 -0
- package/src/themes/vscode/domains.css +132 -0
- package/src/themes/vscode/index.css +13 -0
- package/src/themes/vscode/tokens.css +346 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/* Hex — Aldricpace Base Styles
|
|
2
|
+
* html/body defaults, scrollbar, focus, selection, transitions.
|
|
3
|
+
* Cold light mode law firm — EB Garamond serif headings, Inter body.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
@reference 'tailwindcss';
|
|
7
|
+
@reference './tokens.css';
|
|
8
|
+
|
|
9
|
+
html {
|
|
10
|
+
font-size: 16px;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
html,
|
|
14
|
+
body {
|
|
15
|
+
@apply bg-background text-foreground font-sans;
|
|
16
|
+
|
|
17
|
+
color-scheme: light;
|
|
18
|
+
-webkit-font-smoothing: antialiased;
|
|
19
|
+
-moz-osx-font-smoothing: grayscale;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
body {
|
|
23
|
+
font-size: 16px;
|
|
24
|
+
font-weight: 400;
|
|
25
|
+
line-height: 1.65;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
h1 {
|
|
29
|
+
font-size: 48px;
|
|
30
|
+
font-weight: 400;
|
|
31
|
+
font-family: var(--font-serif);
|
|
32
|
+
color: var(--color-primary);
|
|
33
|
+
margin: 0;
|
|
34
|
+
padding: 0;
|
|
35
|
+
line-height: 1.15;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
h2 {
|
|
39
|
+
font-size: 36px;
|
|
40
|
+
font-weight: 400;
|
|
41
|
+
font-family: var(--font-serif);
|
|
42
|
+
color: var(--color-primary);
|
|
43
|
+
margin: 0;
|
|
44
|
+
padding: 0;
|
|
45
|
+
line-height: 1.2;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
::-webkit-scrollbar {
|
|
49
|
+
width: 8px;
|
|
50
|
+
height: 8px;
|
|
51
|
+
}
|
|
52
|
+
::-webkit-scrollbar-track {
|
|
53
|
+
background: transparent;
|
|
54
|
+
}
|
|
55
|
+
::-webkit-scrollbar-thumb {
|
|
56
|
+
background: color-mix(in srgb, var(--color-foreground) 12%, transparent);
|
|
57
|
+
border-radius: 4px;
|
|
58
|
+
}
|
|
59
|
+
::-webkit-scrollbar-thumb:hover {
|
|
60
|
+
background: color-mix(in srgb, var(--color-foreground) 25%, transparent);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
*:focus-visible {
|
|
64
|
+
outline: 2px solid var(--color-primary);
|
|
65
|
+
outline-offset: 2px;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
::selection {
|
|
69
|
+
background: color-mix(in srgb, var(--color-primary) 30%, transparent);
|
|
70
|
+
color: var(--color-foreground);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
html {
|
|
74
|
+
scroll-behavior: smooth;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
@media (prefers-reduced-motion: reduce) {
|
|
78
|
+
*,
|
|
79
|
+
*::before,
|
|
80
|
+
*::after {
|
|
81
|
+
animation-duration: 0.01ms !important;
|
|
82
|
+
animation-iteration-count: 1 !important;
|
|
83
|
+
transition-duration: 0.01ms !important;
|
|
84
|
+
scroll-behavior: auto !important;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
* {
|
|
89
|
+
scrollbar-width: thin;
|
|
90
|
+
scrollbar-color: color-mix(in srgb, var(--color-foreground) 12%, transparent) transparent;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
@keyframes scroll-fade-in {
|
|
94
|
+
from {
|
|
95
|
+
opacity: 0;
|
|
96
|
+
transform: translateY(20px);
|
|
97
|
+
}
|
|
98
|
+
to {
|
|
99
|
+
opacity: 1;
|
|
100
|
+
transform: translateY(0);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
.scroll-reveal {
|
|
104
|
+
animation: scroll-fade-in linear both;
|
|
105
|
+
animation-timeline: view();
|
|
106
|
+
animation-range: entry 10% cover 30%;
|
|
107
|
+
}
|
|
108
|
+
@media (prefers-reduced-motion: reduce) {
|
|
109
|
+
.scroll-reveal {
|
|
110
|
+
animation: none;
|
|
111
|
+
opacity: 1;
|
|
112
|
+
transform: none;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/* Hex — Aldricpace Component Barrel */
|
|
2
|
+
|
|
3
|
+
@import '../../shared/rig-defaults.css';
|
|
4
|
+
@import '../../shared/components/core.css';
|
|
5
|
+
@import '../../shared/components/layout.css';
|
|
6
|
+
@import '../../shared/components/nav.css';
|
|
7
|
+
@import '../../shared/components/editor.css';
|
|
8
|
+
@import '../../shared/components/lists.css';
|
|
9
|
+
@import '../../shared/components/menus.css';
|
|
10
|
+
@import '../../shared/components/extras.css';
|
|
11
|
+
@import '../../shared/components/shell.css';
|
|
12
|
+
@import '../../shared/components/data.css';
|
|
13
|
+
@import '../../shared/components/spatial.css';
|
|
14
|
+
@import '../../shared/components/temporal.css';
|
|
15
|
+
@import '../../shared/components/web.css';
|
|
16
|
+
@import '../../shared/a11y.css';
|
|
17
|
+
@import '../../shared/components/prose.css';
|
|
18
|
+
@import '../../shared/utilities.css';
|
|
19
|
+
@import '../../shared/scroll-animations.css';
|
|
20
|
+
|
|
21
|
+
@reference 'tailwindcss';
|
|
22
|
+
@reference './tokens.css';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/* Hex — Aldricpace Domains */
|
|
2
|
+
@reference 'tailwindcss';
|
|
3
|
+
@reference './tokens.css';
|
|
4
|
+
|
|
5
|
+
[data-domain='legal'] {
|
|
6
|
+
--domain-accent: #2b4c7e;
|
|
7
|
+
}
|
|
8
|
+
[data-domain='life'] {
|
|
9
|
+
--domain-accent: #8b6f4e;
|
|
10
|
+
}
|
|
11
|
+
[data-domain='software'] {
|
|
12
|
+
--domain-accent: #3b7a57;
|
|
13
|
+
}
|
|
14
|
+
[data-domain='business'] {
|
|
15
|
+
--domain-accent: #2b4c7e;
|
|
16
|
+
}
|
|
17
|
+
[data-domain='history'] {
|
|
18
|
+
--domain-accent: #9e3b3b;
|
|
19
|
+
}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/* Hex — Aldricpace Design Tokens
|
|
2
|
+
* Conservative law firm. Cold light mode with navy and brass accents.
|
|
3
|
+
* Institutional restraint — suited for professional services, legal, finance.
|
|
4
|
+
*
|
|
5
|
+
* Full palette (8 swatch colors):
|
|
6
|
+
* #FAFBFC cold white — background
|
|
7
|
+
* #F2F4F7 fog — card
|
|
8
|
+
* #E6E9EF slate wash — secondary, muted
|
|
9
|
+
* #1B2033 ink — foreground text
|
|
10
|
+
* #555E73 graphite — muted foreground
|
|
11
|
+
* #2B4C7E navy — primary, ring
|
|
12
|
+
* #8B6F4E brass — accent
|
|
13
|
+
* #9E3B3B merlot — destructive
|
|
14
|
+
*
|
|
15
|
+
* @theme feeds Tailwind v4 utility generation (bg-background, text-foreground, etc.)
|
|
16
|
+
* :root provides standalone CSS custom property access for non-Tailwind consumers.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
@theme {
|
|
20
|
+
/* Surface colors */
|
|
21
|
+
--color-background: #fafbfc;
|
|
22
|
+
--color-foreground: #1b2033;
|
|
23
|
+
--color-card: #f2f4f7;
|
|
24
|
+
--color-card-foreground: #1b2033;
|
|
25
|
+
--color-popover: #ffffff;
|
|
26
|
+
--color-popover-foreground: #1b2033;
|
|
27
|
+
|
|
28
|
+
/* Brand */
|
|
29
|
+
--color-primary: #2b4c7e;
|
|
30
|
+
--color-primary-foreground: #fafbfc;
|
|
31
|
+
|
|
32
|
+
/* Soft accents */
|
|
33
|
+
--color-secondary: #e6e9ef;
|
|
34
|
+
--color-secondary-foreground: #1b2033;
|
|
35
|
+
--color-muted: #e6e9ef;
|
|
36
|
+
--color-muted-foreground: #555e73;
|
|
37
|
+
--color-accent: #8b6f4e;
|
|
38
|
+
--color-accent-foreground: #fafbfc;
|
|
39
|
+
|
|
40
|
+
/* Semantic status */
|
|
41
|
+
--color-destructive: #9e3b3b;
|
|
42
|
+
--color-destructive-foreground: #fafbfc;
|
|
43
|
+
--color-success: #3b7a57;
|
|
44
|
+
--color-warning: #b8952a;
|
|
45
|
+
--color-info: #2b4c7e;
|
|
46
|
+
|
|
47
|
+
/* Borders and focus */
|
|
48
|
+
--color-border: #d1d5de;
|
|
49
|
+
--color-input: #d1d5de;
|
|
50
|
+
--color-ring: #2b4c7e;
|
|
51
|
+
|
|
52
|
+
/* Typography */
|
|
53
|
+
--font-sans: 'Inter', system-ui, sans-serif;
|
|
54
|
+
--font-mono: 'Inter', 'SF Mono', ui-monospace, monospace;
|
|
55
|
+
--font-serif: 'EB Garamond', Georgia, serif;
|
|
56
|
+
--font-heading: 'EB Garamond', Georgia, serif;
|
|
57
|
+
|
|
58
|
+
/* Radius */
|
|
59
|
+
/* Typography — IDE-density type scale */
|
|
60
|
+
--font-size-2xs: 0.625rem;
|
|
61
|
+
--font-size-2xs--line-height: 1.25;
|
|
62
|
+
--font-size-xs: 0.75rem;
|
|
63
|
+
--font-size-xs--line-height: 1.5;
|
|
64
|
+
--font-size-sm: 0.8125rem;
|
|
65
|
+
--font-size-sm--line-height: 1.5;
|
|
66
|
+
--font-size-base: 0.875rem;
|
|
67
|
+
--font-size-base--line-height: 1.5;
|
|
68
|
+
--font-size-lg: 1.125rem;
|
|
69
|
+
--font-size-lg--line-height: 1.25;
|
|
70
|
+
--font-size-xl: 1.25rem;
|
|
71
|
+
--font-size-xl--line-height: 1.25;
|
|
72
|
+
|
|
73
|
+
/* Display font family */
|
|
74
|
+
--font-display: var(--font-sans);
|
|
75
|
+
|
|
76
|
+
--radius: 3px;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
:root {
|
|
80
|
+
--background: #fafbfc;
|
|
81
|
+
--foreground: #1b2033;
|
|
82
|
+
--card: #f2f4f7;
|
|
83
|
+
--card-foreground: #1b2033;
|
|
84
|
+
--popover: #ffffff;
|
|
85
|
+
--popover-foreground: #1b2033;
|
|
86
|
+
--primary: #2b4c7e;
|
|
87
|
+
--primary-foreground: #fafbfc;
|
|
88
|
+
--secondary: #e6e9ef;
|
|
89
|
+
--secondary-foreground: #1b2033;
|
|
90
|
+
--muted: #e6e9ef;
|
|
91
|
+
--muted-foreground: #555e73;
|
|
92
|
+
--accent: #8b6f4e;
|
|
93
|
+
--accent-foreground: #fafbfc;
|
|
94
|
+
--destructive: #9e3b3b;
|
|
95
|
+
--destructive-foreground: #fafbfc;
|
|
96
|
+
--success: #3b7a57;
|
|
97
|
+
--warning: #b8952a;
|
|
98
|
+
--info: #2b4c7e;
|
|
99
|
+
--border: #d1d5de;
|
|
100
|
+
--input: #d1d5de;
|
|
101
|
+
--ring: #2b4c7e;
|
|
102
|
+
/* Typography — IDE-density type scale */
|
|
103
|
+
--font-size-2xs: 0.625rem;
|
|
104
|
+
--font-size-2xs--line-height: 1.25;
|
|
105
|
+
--font-size-xs: 0.75rem;
|
|
106
|
+
--font-size-xs--line-height: 1.5;
|
|
107
|
+
--font-size-sm: 0.8125rem;
|
|
108
|
+
--font-size-sm--line-height: 1.5;
|
|
109
|
+
--font-size-base: 0.875rem;
|
|
110
|
+
--font-size-base--line-height: 1.5;
|
|
111
|
+
--font-size-lg: 1.125rem;
|
|
112
|
+
--font-size-lg--line-height: 1.25;
|
|
113
|
+
--font-size-xl: 1.25rem;
|
|
114
|
+
--font-size-xl--line-height: 1.25;
|
|
115
|
+
|
|
116
|
+
/* Display font family */
|
|
117
|
+
--font-display: var(--font-sans);
|
|
118
|
+
|
|
119
|
+
--radius: 3px;
|
|
120
|
+
|
|
121
|
+
/* Typography — IDE-density type scale (shorthand aliases) */
|
|
122
|
+
--text-2xs: 0.625rem;
|
|
123
|
+
--text-xs: 0.75rem;
|
|
124
|
+
--text-sm: 0.8125rem;
|
|
125
|
+
--text-base: 0.875rem;
|
|
126
|
+
--text-lg: 1.125rem;
|
|
127
|
+
--text-xl: 1.25rem;
|
|
128
|
+
--leading-tight: 1.25;
|
|
129
|
+
--leading-snug: 1.375;
|
|
130
|
+
--leading-normal: 1.5;
|
|
131
|
+
--leading-relaxed: 1.625;
|
|
132
|
+
--weight-normal: 400;
|
|
133
|
+
--weight-medium: 500;
|
|
134
|
+
--weight-semibold: 600;
|
|
135
|
+
--weight-bold: 700;
|
|
136
|
+
--tracking-tight: -0.01em;
|
|
137
|
+
--tracking-normal: 0;
|
|
138
|
+
--tracking-wide: 0.05em;
|
|
139
|
+
--tracking-wider: 0.08em;
|
|
140
|
+
--font-display: var(--font-sans);
|
|
141
|
+
--font-sans: 'Inter', system-ui, sans-serif;
|
|
142
|
+
--font-mono: 'Inter', 'SF Mono', ui-monospace, monospace;
|
|
143
|
+
--font-serif: 'EB Garamond', Georgia, serif;
|
|
144
|
+
--font-heading: 'EB Garamond', Georgia, serif;
|
|
145
|
+
|
|
146
|
+
/* ── Named palette aliases ──────────────────────────────────────────────
|
|
147
|
+
* All 8 swatch colors available for direct template use.
|
|
148
|
+
*/
|
|
149
|
+
--ap-cold-white: #fafbfc;
|
|
150
|
+
--ap-fog: #f2f4f7;
|
|
151
|
+
--ap-slate: #e6e9ef;
|
|
152
|
+
--ap-ink: #1b2033;
|
|
153
|
+
--ap-graphite: #555e73;
|
|
154
|
+
--ap-navy: #2b4c7e;
|
|
155
|
+
--ap-brass: #8b6f4e;
|
|
156
|
+
--ap-merlot: #9e3b3b;
|
|
157
|
+
|
|
158
|
+
/* ── Rig component token bridge ─────────────────────────────────────────
|
|
159
|
+
* Overrides shared/tokens.css defaults where the Aldricpace palette needs
|
|
160
|
+
* values that can't be derived directly from --color-* semantics.
|
|
161
|
+
*/
|
|
162
|
+
|
|
163
|
+
/* Button — slate wash for hover feedback */
|
|
164
|
+
--rig-button-hover-bg: #e6e9ef;
|
|
165
|
+
|
|
166
|
+
/* Scrollbar — ink tint for light mode */
|
|
167
|
+
--rig-scrollbar-thumb: rgba(27, 32, 51, 0.12);
|
|
168
|
+
--rig-scrollbar-thumb-hover: rgba(27, 32, 51, 0.25);
|
|
169
|
+
}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
/* Hex — Andrew Passanisi Base Styles
|
|
2
|
+
* html/body defaults, element resets, scrollbar, focus, selection,
|
|
3
|
+
* transitions, and utility classes from the original site.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
@reference 'tailwindcss';
|
|
7
|
+
@reference './tokens.css';
|
|
8
|
+
|
|
9
|
+
/* ───────── Reset ───────── */
|
|
10
|
+
|
|
11
|
+
*,
|
|
12
|
+
*::before,
|
|
13
|
+
*::after {
|
|
14
|
+
box-sizing: border-box;
|
|
15
|
+
margin: 0;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* ───────── Root ───────── */
|
|
19
|
+
|
|
20
|
+
html,
|
|
21
|
+
body,
|
|
22
|
+
#app,
|
|
23
|
+
.my-app {
|
|
24
|
+
@apply w-full bg-blue-darkest font-body;
|
|
25
|
+
font-size: 18px;
|
|
26
|
+
color-scheme: dark;
|
|
27
|
+
-webkit-font-smoothing: antialiased;
|
|
28
|
+
-moz-osx-font-smoothing: grayscale;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
@media (min-width: 768px) {
|
|
32
|
+
html,
|
|
33
|
+
body,
|
|
34
|
+
#app,
|
|
35
|
+
.my-app {
|
|
36
|
+
font-size: 16px;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/* ───────── Typography resets ───────── */
|
|
41
|
+
|
|
42
|
+
p,
|
|
43
|
+
span,
|
|
44
|
+
b,
|
|
45
|
+
a,
|
|
46
|
+
li,
|
|
47
|
+
h1,
|
|
48
|
+
h2 {
|
|
49
|
+
@apply text-blue-lighter;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
p,
|
|
53
|
+
span,
|
|
54
|
+
div,
|
|
55
|
+
a {
|
|
56
|
+
@apply font-body font-light leading-6;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
h2 {
|
|
60
|
+
@apply mb-8 mt-4 font-bold text-blue-lightest;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/* ───────── Links ───────── */
|
|
64
|
+
|
|
65
|
+
a {
|
|
66
|
+
@apply transition-all;
|
|
67
|
+
|
|
68
|
+
&:hover {
|
|
69
|
+
@apply text-accent transition-all;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/* ───────── Buttons ───────── */
|
|
74
|
+
|
|
75
|
+
button {
|
|
76
|
+
@apply max-w-fit rounded border border-accent px-4 py-2 font-accent text-sm text-green transition-all;
|
|
77
|
+
|
|
78
|
+
&:hover {
|
|
79
|
+
@apply bg-green text-blue-darkest drop-shadow-green;
|
|
80
|
+
|
|
81
|
+
> * {
|
|
82
|
+
@apply text-blue-darkest;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/* ───────── List markers ───────── */
|
|
88
|
+
|
|
89
|
+
li {
|
|
90
|
+
&::before {
|
|
91
|
+
@apply mb-[0.1rem] mr-2 inline-block h-1 w-1 bg-accent;
|
|
92
|
+
content: '';
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/* ───────── Utility classes ───────── */
|
|
97
|
+
|
|
98
|
+
.hero-heading {
|
|
99
|
+
font-size: clamp(36px, 6vw, 72px);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.section-heading {
|
|
103
|
+
font-size: clamp(22px, 5vw, 30px);
|
|
104
|
+
@apply relative overflow-hidden;
|
|
105
|
+
|
|
106
|
+
&::after {
|
|
107
|
+
@apply absolute top-[13px] ml-4 h-px w-1/4 bg-blue-lighter;
|
|
108
|
+
content: '';
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/* ───────── Scrollbar ───────── */
|
|
113
|
+
|
|
114
|
+
::-webkit-scrollbar {
|
|
115
|
+
width: 8px;
|
|
116
|
+
height: 8px;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
::-webkit-scrollbar-track {
|
|
120
|
+
background: transparent;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
::-webkit-scrollbar-thumb {
|
|
124
|
+
background: rgba(160, 178, 255, 0.2);
|
|
125
|
+
border-radius: 4px;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
::-webkit-scrollbar-thumb:hover {
|
|
129
|
+
background: rgba(160, 178, 255, 0.4);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
* {
|
|
133
|
+
scrollbar-width: thin;
|
|
134
|
+
scrollbar-color: rgba(160, 178, 255, 0.2) transparent;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/* ───────── Focus ───────── */
|
|
138
|
+
|
|
139
|
+
*:focus-visible {
|
|
140
|
+
outline: 1px solid var(--color-ring);
|
|
141
|
+
outline-offset: -1px;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/* ───────── Selection ───────── */
|
|
145
|
+
|
|
146
|
+
::selection {
|
|
147
|
+
background: rgba(45, 79, 224, 0.4);
|
|
148
|
+
color: var(--color-blue-lightest);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/* ───────── Transitions ───────── */
|
|
152
|
+
|
|
153
|
+
.job-slide-fade-enter-active {
|
|
154
|
+
transition: all 0.3s ease-out;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.job-slide-fade-leave-active {
|
|
158
|
+
transition: all 0s cubic-bezier(1, 0.5, 0.8, 1);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.job-slide-fade-enter-from,
|
|
162
|
+
.job-slide-fade-leave-to {
|
|
163
|
+
transform: translateX(20px);
|
|
164
|
+
opacity: 0;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
.header-slide-fade-enter-active {
|
|
168
|
+
transition: all 0.2s ease-out;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.header-slide-fade-leave-active {
|
|
172
|
+
transition: all 0.2s ease-out;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
.header-slide-fade-enter-from,
|
|
176
|
+
.header-slide-fade-leave-to {
|
|
177
|
+
transform: translateY(-40px);
|
|
178
|
+
opacity: 0;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
/* ───────── Reduced motion ───────── */
|
|
182
|
+
|
|
183
|
+
@media (prefers-reduced-motion: reduce) {
|
|
184
|
+
*,
|
|
185
|
+
*::before,
|
|
186
|
+
*::after {
|
|
187
|
+
animation-duration: 0.01ms !important;
|
|
188
|
+
animation-iteration-count: 1 !important;
|
|
189
|
+
transition-duration: 0.01ms !important;
|
|
190
|
+
scroll-behavior: auto !important;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/* Hex — Andrew Passanisi Full Bundle
|
|
2
|
+
* Import this single file to get everything:
|
|
3
|
+
* Tailwind v4 + shared Rig tokens + base styles + theme tokens.
|
|
4
|
+
*
|
|
5
|
+
* Usage: import '@amulet-laboratories/hex/andrewpassanisi/source'
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
@import 'tailwindcss';
|
|
9
|
+
@import '../../shared/tokens.css';
|
|
10
|
+
@import './base.css';
|
|
11
|
+
@import './tokens.css';
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/* Hex — Andrew Passanisi Design Tokens
|
|
2
|
+
* Dark portfolio theme — deep navy (#060d2b) & neon green (#AEF66D).
|
|
3
|
+
* Preserves the original site's exact Tailwind utility names so all
|
|
4
|
+
* template classes (text-blue-lighter, bg-blue-darkest, etc.) resolve
|
|
5
|
+
* without any component changes.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
@theme {
|
|
9
|
+
/* ── Reset namespaces ── */
|
|
10
|
+
--color-*: initial;
|
|
11
|
+
--font-size-*: initial;
|
|
12
|
+
--font-*: initial;
|
|
13
|
+
--radius-*: initial;
|
|
14
|
+
--breakpoint-*: initial;
|
|
15
|
+
--drop-shadow-*: initial;
|
|
16
|
+
|
|
17
|
+
/* ── Site palette — maps to Tailwind utilities ── */
|
|
18
|
+
--color-blue-lightest: #cad3f7;
|
|
19
|
+
--color-blue-lighter: #a0b2ff;
|
|
20
|
+
--color-blue-light: #2d4fe0;
|
|
21
|
+
--color-blue: #132881;
|
|
22
|
+
--color-blue-dark: #0d1b56;
|
|
23
|
+
--color-blue-darker: #091441;
|
|
24
|
+
--color-blue-darkest: #060d2b;
|
|
25
|
+
--color-green: #aef66d;
|
|
26
|
+
--color-yellow: #dff081;
|
|
27
|
+
--color-accent: #aef66d;
|
|
28
|
+
--color-white: #ffffff;
|
|
29
|
+
--color-black: #000000;
|
|
30
|
+
--color-transparent: rgb(0 0 0 / 0);
|
|
31
|
+
|
|
32
|
+
/* ── Hex semantic contract ── */
|
|
33
|
+
--color-background: #060d2b;
|
|
34
|
+
--color-foreground: #a0b2ff;
|
|
35
|
+
--color-card: #091441;
|
|
36
|
+
--color-card-foreground: #a0b2ff;
|
|
37
|
+
--color-popover: #0d1b56;
|
|
38
|
+
--color-popover-foreground: #cad3f7;
|
|
39
|
+
--color-primary: #aef66d;
|
|
40
|
+
--color-primary-foreground: #060d2b;
|
|
41
|
+
--color-secondary: #091441;
|
|
42
|
+
--color-secondary-foreground: #a0b2ff;
|
|
43
|
+
--color-muted: #0d1b56;
|
|
44
|
+
--color-muted-foreground: #a0b2ff;
|
|
45
|
+
--color-accent-foreground: #060d2b;
|
|
46
|
+
--color-destructive: #f85149;
|
|
47
|
+
--color-destructive-foreground: #cad3f7;
|
|
48
|
+
--color-success: #aef66d;
|
|
49
|
+
--color-warning: #dff081;
|
|
50
|
+
--color-info: #2d4fe0;
|
|
51
|
+
--color-border: #132881;
|
|
52
|
+
--color-input: #0d1b56;
|
|
53
|
+
--color-ring: #aef66d;
|
|
54
|
+
|
|
55
|
+
/* ── Typography ── */
|
|
56
|
+
--font-body: 'Open Sans', sans-serif;
|
|
57
|
+
--font-accent: 'Fira Code', monospace;
|
|
58
|
+
|
|
59
|
+
/* ── Type scale ── */
|
|
60
|
+
--font-size-xxs: 0.625rem;
|
|
61
|
+
--font-size-xxs--line-height: 1.25;
|
|
62
|
+
--font-size-xs: 0.75rem;
|
|
63
|
+
--font-size-xs--line-height: 1.5;
|
|
64
|
+
--font-size-sm: 0.875rem;
|
|
65
|
+
--font-size-sm--line-height: 1.5;
|
|
66
|
+
--font-size-base: 1rem;
|
|
67
|
+
--font-size-base--line-height: 1.5;
|
|
68
|
+
--font-size-md: 1.125rem;
|
|
69
|
+
--font-size-md--line-height: 1.5;
|
|
70
|
+
--font-size-lg: 1.25rem;
|
|
71
|
+
--font-size-lg--line-height: 1.4;
|
|
72
|
+
--font-size-xl: 1.5625rem;
|
|
73
|
+
--font-size-xl--line-height: 1.3;
|
|
74
|
+
--font-size-2xl: 1.75rem;
|
|
75
|
+
--font-size-2xl--line-height: 1.25;
|
|
76
|
+
--font-size-3xl: 2rem;
|
|
77
|
+
--font-size-3xl--line-height: 1.25;
|
|
78
|
+
--font-size-4xl: 2.375rem;
|
|
79
|
+
--font-size-4xl--line-height: 1.2;
|
|
80
|
+
|
|
81
|
+
/* ── Border radius ── */
|
|
82
|
+
--radius-none: 0;
|
|
83
|
+
--radius-xs: 0.125rem;
|
|
84
|
+
--radius-sm: 0.375rem;
|
|
85
|
+
--radius: 0.25rem;
|
|
86
|
+
--radius-lg: 0.5rem;
|
|
87
|
+
--radius-xl: 1rem;
|
|
88
|
+
--radius-full: 9999px;
|
|
89
|
+
|
|
90
|
+
/* ── Breakpoints ── */
|
|
91
|
+
--breakpoint-xs: 360px;
|
|
92
|
+
--breakpoint-sm: 768px;
|
|
93
|
+
--breakpoint-md: 1024px;
|
|
94
|
+
--breakpoint-lg: 1366px;
|
|
95
|
+
--breakpoint-xl: 1920px;
|
|
96
|
+
|
|
97
|
+
/* ── Drop shadows ── */
|
|
98
|
+
--drop-shadow-green: 0 0 4px #aef66da1;
|
|
99
|
+
--drop-shadow-blue: 0 0 4px #cad3f7aa;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
:root {
|
|
103
|
+
/* ── Shorthand aliases ── */
|
|
104
|
+
--background: #060d2b;
|
|
105
|
+
--foreground: #a0b2ff;
|
|
106
|
+
--primary: #aef66d;
|
|
107
|
+
--primary-foreground: #060d2b;
|
|
108
|
+
--border: #132881;
|
|
109
|
+
--input: #0d1b56;
|
|
110
|
+
--ring: #aef66d;
|
|
111
|
+
--radius: 0.25rem;
|
|
112
|
+
|
|
113
|
+
/* ── Rig semantic token bridge ── */
|
|
114
|
+
--rig-button-bg: var(--color-accent);
|
|
115
|
+
--rig-button-fg: var(--color-blue-darkest);
|
|
116
|
+
--rig-button-hover-bg: var(--color-green);
|
|
117
|
+
--rig-button-border: var(--color-accent);
|
|
118
|
+
--rig-button-secondary-bg: transparent;
|
|
119
|
+
--rig-button-secondary-fg: var(--color-accent);
|
|
120
|
+
--rig-button-secondary-hover-bg: var(--color-blue-darker);
|
|
121
|
+
--rig-input-bg: var(--color-blue-darker);
|
|
122
|
+
--rig-input-border: var(--color-blue);
|
|
123
|
+
--rig-input-fg: var(--color-blue-lightest);
|
|
124
|
+
--rig-input-placeholder: var(--color-blue-lighter);
|
|
125
|
+
--rig-badge-bg: var(--color-accent);
|
|
126
|
+
--rig-badge-fg: var(--color-blue-darkest);
|
|
127
|
+
--rig-sidebar-bg: var(--color-blue-darker);
|
|
128
|
+
--rig-sidebar-border: var(--color-blue);
|
|
129
|
+
--rig-sidebar-fg: var(--color-blue-lighter);
|
|
130
|
+
--rig-scrollbar-thumb: rgba(160, 178, 255, 0.15);
|
|
131
|
+
--rig-scrollbar-thumb-hover: rgba(160, 178, 255, 0.28);
|
|
132
|
+
--rig-list-hover-bg: rgba(174, 246, 109, 0.06);
|
|
133
|
+
--rig-list-active-bg: var(--color-accent);
|
|
134
|
+
--rig-list-active-fg: var(--color-blue-darkest);
|
|
135
|
+
--rig-description-fg: var(--color-blue-lighter);
|
|
136
|
+
}
|