@arclux/arc-ui-html 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +57 -0
- package/css/animated-number.css +12 -0
- package/css/app-shell.css +52 -0
- package/css/arc-ui.css +3045 -0
- package/css/aspect-ratio.css +23 -0
- package/css/auth-shell.css +98 -0
- package/css/avatar-group.css +49 -0
- package/css/avatar.css +53 -0
- package/css/badge.css +76 -0
- package/css/button.css +94 -0
- package/css/callout.css +84 -0
- package/css/card.css +50 -0
- package/css/code-block.css +86 -0
- package/css/color-swatch.css +47 -0
- package/css/container.css +15 -0
- package/css/dashboard-grid.css +21 -0
- package/css/divider.css +128 -0
- package/css/empty-state.css +43 -0
- package/css/feature-card.css +102 -0
- package/css/footer.css +60 -0
- package/css/form.css +454 -0
- package/css/highlight.css +13 -0
- package/css/icon-button.css +118 -0
- package/css/icon.css +36 -0
- package/css/kbd.css +21 -0
- package/css/link.css +74 -0
- package/css/markdown.css +133 -0
- package/css/meter.css +59 -0
- package/css/page-header.css +55 -0
- package/css/page-layout.css +65 -0
- package/css/progress.css +96 -0
- package/css/scroll-area.css +70 -0
- package/css/section.css +27 -0
- package/css/settings-layout.css +55 -0
- package/css/skeleton.css +44 -0
- package/css/spinner.css +46 -0
- package/css/stack.css +38 -0
- package/css/stat.css +42 -0
- package/css/status-bar.css +50 -0
- package/css/stepper.css +134 -0
- package/css/table.css +85 -0
- package/css/text.css +77 -0
- package/css/timeline.css +117 -0
- package/css/toolbar.css +54 -0
- package/css/tooltip.css +107 -0
- package/css/top-bar.css +158 -0
- package/css/value-card.css +60 -0
- package/examples/animated-number.html +8 -0
- package/examples/animated-number.inline.html +8 -0
- package/examples/app-shell.html +20 -0
- package/examples/app-shell.inline.html +31 -0
- package/examples/aspect-ratio.html +12 -0
- package/examples/aspect-ratio.inline.html +12 -0
- package/examples/auth-shell.html +20 -0
- package/examples/auth-shell.inline.html +28 -0
- package/examples/avatar-group.html +8 -0
- package/examples/avatar-group.inline.html +8 -0
- package/examples/avatar.html +7 -0
- package/examples/avatar.inline.html +11 -0
- package/examples/badge.html +5 -0
- package/examples/badge.inline.html +10 -0
- package/examples/button.html +5 -0
- package/examples/button.inline.html +21 -0
- package/examples/callout.html +12 -0
- package/examples/callout.inline.html +12 -0
- package/examples/card.html +5 -0
- package/examples/card.inline.html +13 -0
- package/examples/code-block.html +18 -0
- package/examples/code-block.inline.html +22 -0
- package/examples/color-swatch.html +12 -0
- package/examples/color-swatch.inline.html +16 -0
- package/examples/container.html +5 -0
- package/examples/container.inline.html +5 -0
- package/examples/dashboard-grid.html +7 -0
- package/examples/dashboard-grid.inline.html +10 -0
- package/examples/divider.html +5 -0
- package/examples/divider.inline.html +10 -0
- package/examples/empty-state.html +14 -0
- package/examples/empty-state.inline.html +14 -0
- package/examples/feature-card.html +12 -0
- package/examples/feature-card.inline.html +25 -0
- package/examples/footer.html +18 -0
- package/examples/footer.inline.html +18 -0
- package/examples/form.html +86 -0
- package/examples/highlight.html +5 -0
- package/examples/highlight.inline.html +5 -0
- package/examples/icon-button.html +5 -0
- package/examples/icon-button.inline.html +22 -0
- package/examples/icon.html +12 -0
- package/examples/icon.inline.html +12 -0
- package/examples/kbd.html +5 -0
- package/examples/kbd.inline.html +5 -0
- package/examples/link.html +13 -0
- package/examples/link.inline.html +23 -0
- package/examples/markdown.html +6 -0
- package/examples/markdown.inline.html +16 -0
- package/examples/meter.html +20 -0
- package/examples/meter.inline.html +29 -0
- package/examples/page-header.html +22 -0
- package/examples/page-header.inline.html +22 -0
- package/examples/page-layout.html +15 -0
- package/examples/page-layout.inline.html +21 -0
- package/examples/progress.html +20 -0
- package/examples/progress.inline.html +27 -0
- package/examples/scroll-area.html +12 -0
- package/examples/scroll-area.inline.html +22 -0
- package/examples/section.html +8 -0
- package/examples/section.inline.html +13 -0
- package/examples/settings-layout.html +12 -0
- package/examples/settings-layout.inline.html +22 -0
- package/examples/skeleton.html +10 -0
- package/examples/skeleton.inline.html +15 -0
- package/examples/spinner.html +9 -0
- package/examples/spinner.inline.html +9 -0
- package/examples/stack.html +5 -0
- package/examples/stack.inline.html +5 -0
- package/examples/stat.html +9 -0
- package/examples/stat.inline.html +10 -0
- package/examples/status-bar.html +15 -0
- package/examples/status-bar.inline.html +15 -0
- package/examples/stepper.html +18 -0
- package/examples/stepper.inline.html +18 -0
- package/examples/table.html +7 -0
- package/examples/table.inline.html +7 -0
- package/examples/text.html +5 -0
- package/examples/text.inline.html +5 -0
- package/examples/timeline.html +10 -0
- package/examples/timeline.inline.html +10 -0
- package/examples/toolbar.html +15 -0
- package/examples/toolbar.inline.html +15 -0
- package/examples/tooltip.html +19 -0
- package/examples/tooltip.inline.html +19 -0
- package/examples/top-bar.html +23 -0
- package/examples/top-bar.inline.html +29 -0
- package/examples/value-card.html +11 -0
- package/examples/value-card.inline.html +15 -0
- package/package.json +31 -0
package/css/tooltip.css
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/* Auto-generated by @arclux/prism — do not edit manually */
|
|
2
|
+
|
|
3
|
+
/* arc-tooltip */
|
|
4
|
+
.arc-tooltip {
|
|
5
|
+
display: inline-block;
|
|
6
|
+
position: relative;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.arc-tooltip .tooltip__trigger {
|
|
10
|
+
display: inline-block;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.arc-tooltip .tooltip__popup {
|
|
14
|
+
position: absolute;
|
|
15
|
+
z-index: 1000;
|
|
16
|
+
background: var(--bg-elevated);
|
|
17
|
+
border: 1px solid var(--border-default);
|
|
18
|
+
border-radius: var(--radius-sm);
|
|
19
|
+
padding: var(--space-xs) var(--space-sm);
|
|
20
|
+
font-family: var(--font-body);
|
|
21
|
+
font-size: var(--text-sm);
|
|
22
|
+
color: var(--text-primary);
|
|
23
|
+
white-space: nowrap;
|
|
24
|
+
pointer-events: none;
|
|
25
|
+
opacity: 0;
|
|
26
|
+
transition: opacity var(--transition-fast);
|
|
27
|
+
box-shadow: var(--shadow-overlay);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.arc-tooltip .tooltip__popup.is-visible {
|
|
31
|
+
opacity: 1;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/* Arrow */
|
|
35
|
+
.arc-tooltip .tooltip__arrow {
|
|
36
|
+
position: absolute;
|
|
37
|
+
width: 8px;
|
|
38
|
+
height: 8px;
|
|
39
|
+
background: var(--bg-elevated);
|
|
40
|
+
border: 1px solid var(--border-default);
|
|
41
|
+
transform: rotate(45deg);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/* Positions */
|
|
45
|
+
.arc-tooltip:not([data-position]) .tooltip__popup,
|
|
46
|
+
.arc-tooltip[data-position="top"] .tooltip__popup {
|
|
47
|
+
bottom: calc(100% + 8px);
|
|
48
|
+
left: 50%;
|
|
49
|
+
transform: translateX(-50%);
|
|
50
|
+
}
|
|
51
|
+
.arc-tooltip:not([data-position]) .tooltip__arrow,
|
|
52
|
+
.arc-tooltip[data-position="top"] .tooltip__arrow {
|
|
53
|
+
bottom: -5px;
|
|
54
|
+
left: 50%;
|
|
55
|
+
transform: translateX(-50%) rotate(45deg);
|
|
56
|
+
border-top: none;
|
|
57
|
+
border-left: none;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.arc-tooltip[data-position="bottom"] .tooltip__popup {
|
|
61
|
+
top: calc(100% + 8px);
|
|
62
|
+
left: 50%;
|
|
63
|
+
transform: translateX(-50%);
|
|
64
|
+
}
|
|
65
|
+
.arc-tooltip[data-position="bottom"] .tooltip__arrow {
|
|
66
|
+
top: -5px;
|
|
67
|
+
left: 50%;
|
|
68
|
+
transform: translateX(-50%) rotate(45deg);
|
|
69
|
+
border-bottom: none;
|
|
70
|
+
border-right: none;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.arc-tooltip[data-position="left"] .tooltip__popup {
|
|
74
|
+
right: calc(100% + 8px);
|
|
75
|
+
top: 50%;
|
|
76
|
+
transform: translateY(-50%);
|
|
77
|
+
}
|
|
78
|
+
.arc-tooltip[data-position="left"] .tooltip__arrow {
|
|
79
|
+
right: -5px;
|
|
80
|
+
top: 50%;
|
|
81
|
+
transform: translateY(-50%) rotate(45deg);
|
|
82
|
+
border-bottom: none;
|
|
83
|
+
border-left: none;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.arc-tooltip[data-position="right"] .tooltip__popup {
|
|
87
|
+
left: calc(100% + 8px);
|
|
88
|
+
top: 50%;
|
|
89
|
+
transform: translateY(-50%);
|
|
90
|
+
}
|
|
91
|
+
.arc-tooltip[data-position="right"] .tooltip__arrow {
|
|
92
|
+
left: -5px;
|
|
93
|
+
top: 50%;
|
|
94
|
+
transform: translateY(-50%) rotate(45deg);
|
|
95
|
+
border-top: none;
|
|
96
|
+
border-right: none;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
@media (prefers-reduced-motion: reduce) {
|
|
100
|
+
.arc-tooltip *,
|
|
101
|
+
.arc-tooltip *::before,
|
|
102
|
+
.arc-tooltip *::after {
|
|
103
|
+
animation-duration: 0.01ms !important;
|
|
104
|
+
animation-iteration-count: 1 !important;
|
|
105
|
+
transition-duration: 0.01ms !important;
|
|
106
|
+
}
|
|
107
|
+
}
|
package/css/top-bar.css
ADDED
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/* Auto-generated by @arclux/prism — do not edit manually */
|
|
2
|
+
|
|
3
|
+
/* arc-top-bar */
|
|
4
|
+
.arc-top-bar {
|
|
5
|
+
display: block;
|
|
6
|
+
width: 100%;
|
|
7
|
+
z-index: 100;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.arc-top-bar[fixed] {
|
|
11
|
+
position: fixed;
|
|
12
|
+
top: 0;
|
|
13
|
+
left: 0;
|
|
14
|
+
right: 0;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.arc-top-bar .topbar {
|
|
18
|
+
position: relative;
|
|
19
|
+
display: flex;
|
|
20
|
+
align-items: center;
|
|
21
|
+
height: var(--nav-height);
|
|
22
|
+
padding: 0 var(--space-lg);
|
|
23
|
+
background: color-mix(in srgb, var(--bg-deep) 85%, transparent);
|
|
24
|
+
backdrop-filter: blur(12px) saturate(130%);
|
|
25
|
+
-webkit-backdrop-filter: blur(12px) saturate(130%);
|
|
26
|
+
border-bottom: 1px solid var(--border-subtle);
|
|
27
|
+
gap: var(--space-md);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.arc-top-bar .topbar__glow {
|
|
31
|
+
position: absolute;
|
|
32
|
+
bottom: -1px;
|
|
33
|
+
left: 20%;
|
|
34
|
+
right: 20%;
|
|
35
|
+
height: 1px;
|
|
36
|
+
background: linear-gradient(90deg, transparent, rgba(var(--accent-secondary-rgb), 0.2), rgba(var(--accent-primary-rgb), 0.15), transparent);
|
|
37
|
+
opacity: 0;
|
|
38
|
+
transition: opacity var(--transition-slow);
|
|
39
|
+
pointer-events: none;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.arc-top-bar[scrolled] .topbar__glow {
|
|
43
|
+
opacity: 1;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.arc-top-bar .topbar__brand {
|
|
47
|
+
display: flex;
|
|
48
|
+
align-items: center;
|
|
49
|
+
gap: var(--space-sm);
|
|
50
|
+
color: var(--text-primary);
|
|
51
|
+
text-decoration: none;
|
|
52
|
+
flex: 0 0 auto;
|
|
53
|
+
overflow: visible;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.arc-top-bar .topbar__heading {
|
|
57
|
+
font-family: var(--font-body);
|
|
58
|
+
font-size: var(--wordmark-size);
|
|
59
|
+
font-weight: var(--wordmark-weight);
|
|
60
|
+
letter-spacing: var(--wordmark-spacing);
|
|
61
|
+
text-transform: uppercase;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.arc-top-bar .topbar__center {
|
|
65
|
+
flex: 1;
|
|
66
|
+
display: flex;
|
|
67
|
+
align-items: center;
|
|
68
|
+
justify-content: center;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.arc-top-bar .topbar__actions {
|
|
72
|
+
display: flex;
|
|
73
|
+
align-items: center;
|
|
74
|
+
gap: var(--space-sm);
|
|
75
|
+
flex-shrink: 0;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.arc-top-bar .topbar__menu-btn {
|
|
79
|
+
display: none;
|
|
80
|
+
align-items: center;
|
|
81
|
+
justify-content: center;
|
|
82
|
+
width: 36px;
|
|
83
|
+
height: 36px;
|
|
84
|
+
min-width: 36px;
|
|
85
|
+
aspect-ratio: 1;
|
|
86
|
+
background: none;
|
|
87
|
+
border: 1px solid var(--border-subtle);
|
|
88
|
+
color: var(--text-primary);
|
|
89
|
+
cursor: pointer;
|
|
90
|
+
padding: 0;
|
|
91
|
+
border-radius: var(--radius-sm);
|
|
92
|
+
transition: background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.arc-top-bar .topbar__menu-btn:hover {
|
|
96
|
+
background: var(--bg-hover);
|
|
97
|
+
border-color: var(--border-default);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.arc-top-bar .topbar__menu-btn:focus-visible {
|
|
101
|
+
outline: none;
|
|
102
|
+
box-shadow: var(--focus-glow);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.arc-top-bar .topbar__menu-btn--open {
|
|
106
|
+
border-color: rgba(var(--accent-primary-rgb), 0.3);
|
|
107
|
+
background: rgba(var(--accent-primary-rgb), 0.06);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.arc-top-bar .topbar__hamburger {
|
|
111
|
+
width: 16px;
|
|
112
|
+
height: 12px;
|
|
113
|
+
position: relative;
|
|
114
|
+
display: flex;
|
|
115
|
+
flex-direction: column;
|
|
116
|
+
justify-content: space-between;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.arc-top-bar .topbar__hamburger-line {
|
|
120
|
+
display: block;
|
|
121
|
+
width: 100%;
|
|
122
|
+
height: 1.5px;
|
|
123
|
+
background: currentColor;
|
|
124
|
+
border-radius: 1px; /* cosmetic rounding on 1.5px hamburger lines -- intentionally not tokenized */
|
|
125
|
+
transition: transform 400ms var(--ease-out-expo), opacity 250ms ease, width 400ms var(--ease-out-expo);
|
|
126
|
+
transform-origin: center;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.arc-top-bar .topbar__hamburger-line:nth-child(2) {
|
|
130
|
+
width: 100%;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
.arc-top-bar .topbar__menu-btn--open .topbar__hamburger-line:nth-child(1) {
|
|
134
|
+
transform: translateY(5.25px) rotate(45deg);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.arc-top-bar .topbar__menu-btn--open .topbar__hamburger-line:nth-child(2) {
|
|
138
|
+
opacity: 0;
|
|
139
|
+
width: 0;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.arc-top-bar .topbar__menu-btn--open .topbar__hamburger-line:nth-child(3) {
|
|
143
|
+
transform: translateY(-5.25px) rotate(-45deg);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
@media (max-width: 900px) {
|
|
147
|
+
.arc-top-bar .topbar__menu-btn { display: flex; }
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
@media (prefers-reduced-motion: reduce) {
|
|
151
|
+
.arc-top-bar *,
|
|
152
|
+
.arc-top-bar *::before,
|
|
153
|
+
.arc-top-bar *::after {
|
|
154
|
+
animation-duration: 0.01ms !important;
|
|
155
|
+
animation-iteration-count: 1 !important;
|
|
156
|
+
transition-duration: 0.01ms !important;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/* Auto-generated by @arclux/prism — do not edit manually */
|
|
2
|
+
|
|
3
|
+
/* arc-value-card */
|
|
4
|
+
.arc-value-card { display: flex; flex-direction: column; height: 100%; }
|
|
5
|
+
|
|
6
|
+
.arc-value-card .card {
|
|
7
|
+
position: relative;
|
|
8
|
+
display: flex;
|
|
9
|
+
align-items: flex-start;
|
|
10
|
+
gap: var(--space-lg);
|
|
11
|
+
padding: var(--space-lg);
|
|
12
|
+
flex: 1;
|
|
13
|
+
border: 1px solid var(--border-subtle);
|
|
14
|
+
border-radius: var(--radius-lg);
|
|
15
|
+
transition: border-color var(--transition-base), box-shadow var(--transition-base);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.arc-value-card .card:hover {
|
|
19
|
+
border-color: var(--border-bright);
|
|
20
|
+
box-shadow: 0 0 20px rgba(var(--accent-secondary-rgb),0.06);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.arc-value-card .card__icon {
|
|
24
|
+
flex-shrink: 0;
|
|
25
|
+
color: var(--accent-secondary);
|
|
26
|
+
font-size: 24px; /* icon size, not text */
|
|
27
|
+
line-height: 1;
|
|
28
|
+
padding-top: 2px;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.arc-value-card .card__text {
|
|
32
|
+
display: flex;
|
|
33
|
+
flex-direction: column;
|
|
34
|
+
gap: var(--space-sm);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.arc-value-card .card__title {
|
|
38
|
+
font-size: 17px; /* heading size, keep hardcoded */
|
|
39
|
+
font-weight: 600;
|
|
40
|
+
color: var(--text-primary);
|
|
41
|
+
margin: 0;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.arc-value-card .card__desc {
|
|
45
|
+
color: var(--text-secondary);
|
|
46
|
+
font-family: var(--font-body);
|
|
47
|
+
font-size: var(--text-sm);
|
|
48
|
+
line-height: 1.7;
|
|
49
|
+
margin: 0;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
@media (prefers-reduced-motion: reduce) {
|
|
53
|
+
.arc-value-card *,
|
|
54
|
+
.arc-value-card *::before,
|
|
55
|
+
.arc-value-card *::after {
|
|
56
|
+
animation-duration: 0.01ms !important;
|
|
57
|
+
animation-iteration-count: 1 !important;
|
|
58
|
+
transition-duration: 0.01ms !important;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclux/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-animated-number — requires animated-number.css + tokens.css (or arc-ui.css) -->
|
|
3
|
+
<span class="arc-animated-number">
|
|
4
|
+
<span class="value"
|
|
5
|
+
role="status"
|
|
6
|
+
aria-live="polite"
|
|
7
|
+
>_format Value</span>
|
|
8
|
+
</span>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclux/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-animated-number — self-contained, no external CSS needed -->
|
|
3
|
+
<span class="arc-animated-number" style="display: inline-block; font-family: 'JetBrains Mono', ui-monospace, monospace; font-variant-numeric: tabular-nums">
|
|
4
|
+
<span style="white-space: nowrap"
|
|
5
|
+
role="status"
|
|
6
|
+
aria-live="polite"
|
|
7
|
+
>_format Value</span>
|
|
8
|
+
</span>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-app-shell — requires app-shell.css + tokens.css (or arc-ui.css) -->
|
|
3
|
+
<div class="arc-app-shell">
|
|
4
|
+
<div class="shell">
|
|
5
|
+
|
|
6
|
+
<div class="shell__body">
|
|
7
|
+
<div class="shell__sidebar">
|
|
8
|
+
|
|
9
|
+
</div>
|
|
10
|
+
<div class="shell__main">
|
|
11
|
+
<div class="shell__content">
|
|
12
|
+
App Shell
|
|
13
|
+
</div>
|
|
14
|
+
<div class="shell__toc">
|
|
15
|
+
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
</div>
|
|
20
|
+
</div>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-app-shell — self-contained, no external CSS needed -->
|
|
3
|
+
<style>
|
|
4
|
+
@media (max-width: 1280px) {
|
|
5
|
+
.arc-app-shell .shell__toc { display: none; }
|
|
6
|
+
}
|
|
7
|
+
@media (max-width: 768px) {
|
|
8
|
+
.arc-app-shell .shell__sidebar { display: none; }
|
|
9
|
+
}
|
|
10
|
+
@media (max-width: 768px) {
|
|
11
|
+
.arc-app-shell([sidebar-open]) .shell__sidebar { display: block; }
|
|
12
|
+
}
|
|
13
|
+
</style>
|
|
14
|
+
<div class="arc-app-shell" style="display: block; min-height: 100vh; background: rgb(3, 3, 7); color: rgb(232, 232, 236)">
|
|
15
|
+
<div class="shell" style="display: flex; flex-direction: column; min-height: 100vh">
|
|
16
|
+
|
|
17
|
+
<div style="display: flex; flex: 1; padding-top: 64px">
|
|
18
|
+
<div class="shell__sidebar" style="flex-shrink: 0">
|
|
19
|
+
|
|
20
|
+
</div>
|
|
21
|
+
<div style="flex: 1; min-width: 0; display: flex">
|
|
22
|
+
<div style="flex: 1; min-width: 0; padding: 40px 40px; max-width: 860px">
|
|
23
|
+
App Shell
|
|
24
|
+
</div>
|
|
25
|
+
<div class="shell__toc" style="flex-shrink: 0; width: 220px">
|
|
26
|
+
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
</div>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclux/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-aspect-ratio — requires aspect-ratio.css + tokens.css (or arc-ui.css) -->
|
|
3
|
+
<div class="arc-aspect-ratio">
|
|
4
|
+
<div
|
|
5
|
+
class="aspect-ratio"
|
|
6
|
+
style="aspect-ratio: _aspect Ratio;"
|
|
7
|
+
>
|
|
8
|
+
<div class="aspect-ratio__inner">
|
|
9
|
+
Aspect Ratio
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclux/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-aspect-ratio — self-contained, no external CSS needed -->
|
|
3
|
+
<div class="arc-aspect-ratio" style="display: block">
|
|
4
|
+
<div
|
|
5
|
+
style="position: relative; width: 100%; overflow: hidden; border-radius: 10px"
|
|
6
|
+
style="aspect-ratio: _aspect Ratio;"
|
|
7
|
+
>
|
|
8
|
+
<div style="width: 100%; height: 100%">
|
|
9
|
+
Aspect Ratio
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-auth-shell — requires auth-shell.css + tokens.css (or arc-ui.css) -->
|
|
3
|
+
<div class="arc-auth-shell">
|
|
4
|
+
<div class="auth-shell--split">
|
|
5
|
+
<div class="form-side">
|
|
6
|
+
<div class="logo">
|
|
7
|
+
|
|
8
|
+
</div>
|
|
9
|
+
<div class="card">
|
|
10
|
+
Auth Shell
|
|
11
|
+
</div>
|
|
12
|
+
<div class="footer">
|
|
13
|
+
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
<div class="aside-side">
|
|
17
|
+
|
|
18
|
+
</div>
|
|
19
|
+
</div>
|
|
20
|
+
</div>
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-auth-shell — self-contained, no external CSS needed -->
|
|
3
|
+
<style>
|
|
4
|
+
@media (max-width: 768px) {
|
|
5
|
+
.arc-auth-shell .auth-shell--split { grid-template-columns: 1fr; }
|
|
6
|
+
}
|
|
7
|
+
@media (max-width: 768px) {
|
|
8
|
+
.arc-auth-shell .auth-shell--split .aside-side { display: none; }
|
|
9
|
+
}
|
|
10
|
+
</style>
|
|
11
|
+
<div class="arc-auth-shell" style="display: block; box-sizing: border-box">
|
|
12
|
+
<div class="auth-shell--split" style="display: grid; grid-template-columns: 1fr 1fr; min-height: 100vh; box-sizing: border-box">
|
|
13
|
+
<div style="display: flex; flex-direction: column; align-items: center; justify-content: center; background: rgb(10, 10, 15); padding: 40px 24px">
|
|
14
|
+
<div style="margin-bottom: 40px; text-align: center">
|
|
15
|
+
|
|
16
|
+
</div>
|
|
17
|
+
<div style="background: rgb(13, 13, 18); border: 1px solid rgb(34, 34, 41); border-radius: 14px; padding: 40px; width: 100%; max-width: 420px; box-sizing: border-box">
|
|
18
|
+
Auth Shell
|
|
19
|
+
</div>
|
|
20
|
+
<div style="margin-top: 24px; color: rgb(124, 124, 137); font-size: 13px; text-align: center">
|
|
21
|
+
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
<div class="aside-side" style="display: flex; align-items: center; justify-content: center; background: rgb(3, 3, 7); padding: 40px">
|
|
25
|
+
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-avatar-group — requires avatar-group.css + tokens.css (or arc-ui.css) -->
|
|
3
|
+
<span class="arc-avatar-group">
|
|
4
|
+
<div class="group" role="group" aria-label="Avatar group">
|
|
5
|
+
Avatar Group
|
|
6
|
+
<span class="group__overflow" style="display:none"></span>
|
|
7
|
+
</div>
|
|
8
|
+
</span>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-avatar-group — self-contained, no external CSS needed -->
|
|
3
|
+
<span class="arc-avatar-group" style="display: inline-flex">
|
|
4
|
+
<div style="display: flex; align-items: center" role="group" aria-label="Avatar group">
|
|
5
|
+
Avatar Group
|
|
6
|
+
<span style="display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 9999px; background: rgb(17, 17, 22); border: 1px solid rgb(34, 34, 41); font-family: 'Tektur', system-ui, sans-serif; font-weight: 600; font-size: 12px; color: rgb(124, 124, 137); user-select: none" style="display:none"></span>
|
|
7
|
+
</div>
|
|
8
|
+
</span>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-avatar — self-contained, no external CSS needed -->
|
|
3
|
+
<style>
|
|
4
|
+
.arc-avatar .avatar:hover { border-color: rgb(51, 51, 64);
|
|
5
|
+
box-shadow: 0 0 12px rgba(77, 126, 247, 0.15); }
|
|
6
|
+
</style>
|
|
7
|
+
<span class="arc-avatar" style="display: inline-flex">
|
|
8
|
+
<div class="avatar" style="display: inline-flex; align-items: center; justify-content: center; border-radius: 9999px; border: 1px solid rgb(34, 34, 41); overflow: hidden; background: rgb(17, 17, 22)" role="img" aria-label="Name">
|
|
9
|
+
|
|
10
|
+
</div>
|
|
11
|
+
</span>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-badge — self-contained, no external CSS needed -->
|
|
3
|
+
<style>
|
|
4
|
+
.arc-badge:hover .badge { border-color: rgb(51, 51, 64); }
|
|
5
|
+
.arc-badge[data-variant="primary"]:hover .badge { box-shadow: 0 0 12px rgba(77, 126, 247, 0.15); }
|
|
6
|
+
.arc-badge[data-variant="secondary"]:hover .badge { box-shadow: 0 0 12px rgba(139, 92, 246, 0.15); }
|
|
7
|
+
</style>
|
|
8
|
+
<span class="arc-badge" style="display: inline-flex">
|
|
9
|
+
<span class="badge" style="display: inline-flex; align-items: center; gap: 8px; font-family: 'Tektur', system-ui, sans-serif; font-weight: 600; font-size: 12px; letter-spacing: 4px; text-transform: uppercase; color: rgb(124, 124, 137); padding: 6px 16px; border: 1px solid rgb(34, 34, 41); border-radius: 100px; background: rgba(255, 255, 255, 0.03)">Badge</span>
|
|
10
|
+
</span>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-button — self-contained, no external CSS needed -->
|
|
3
|
+
<style>
|
|
4
|
+
.arc-button:not([data-variant]) .btn:hover,
|
|
5
|
+
.arc-button[data-variant="primary"] .btn:hover { box-shadow: 0 0 8px rgba(77,126,247,0.9), 0 0 20px rgba(77,126,247,0.5), 0 0 44px rgba(77,126,247,0.25), 0 0 80px rgba(77,126,247,0.1); }
|
|
6
|
+
.arc-button:not([data-variant]) .btn:active,
|
|
7
|
+
.arc-button[data-variant="primary"] .btn:active { transform: scale(0.97); box-shadow: 0 0 8px rgba(77, 126, 247,0.5); }
|
|
8
|
+
.arc-button[data-variant="secondary"] .btn:hover { border-color: rgb(77, 126, 247);
|
|
9
|
+
color: rgb(77, 126, 247);
|
|
10
|
+
box-shadow: 0 0 20px rgba(77, 126, 247, 0.15); }
|
|
11
|
+
.arc-button[data-variant="secondary"] .btn:active { transform: scale(0.97);
|
|
12
|
+
background: rgba(77, 126, 247,0.05); }
|
|
13
|
+
.arc-button[data-variant="ghost"] .btn:hover { color: rgb(232, 232, 236);
|
|
14
|
+
background: rgba(255, 255, 255,0.03); }
|
|
15
|
+
.arc-button[data-variant="ghost"] .btn:active { transform: scale(0.97);
|
|
16
|
+
background: rgba(255, 255, 255,0.06); }
|
|
17
|
+
.arc-button .btn:focus-visible { outline: none; box-shadow: 0 0 0 2px rgb(3, 3, 7), 0 0 0 4px rgb(77, 126, 247), 0 0 16px rgba(77,126,247,0.3); }
|
|
18
|
+
</style>
|
|
19
|
+
<span class="arc-button" style="display: inline-flex">
|
|
20
|
+
<a class="btn" style="display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-family: 'Tektur', system-ui, sans-serif; font-weight: 600; text-transform: uppercase; letter-spacing: 2px; border: 1px solid transparent; border-radius: 10px; cursor: pointer; text-decoration: none; white-space: nowrap; box-sizing: border-box" href="#">Button</a>
|
|
21
|
+
</span>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-callout — requires callout.css + tokens.css (or arc-ui.css) -->
|
|
3
|
+
<div class="arc-callout">
|
|
4
|
+
<div class="callout" role="note">
|
|
5
|
+
<span class="callout__icon" aria-hidden="true">
|
|
6
|
+
_get Default Icon
|
|
7
|
+
</span>
|
|
8
|
+
<div class="callout__content">
|
|
9
|
+
Callout
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-callout — self-contained, no external CSS needed -->
|
|
3
|
+
<div class="arc-callout" style="display: block">
|
|
4
|
+
<div style="position: absolute; display: flex; gap: 16px; padding: 16px 24px; border-radius: 10px; border: 1px solid rgb(34, 34, 41); background: rgb(51, 51, 64); font-family: 'Host Grotesk', system-ui, sans-serif; font-size: clamp(15px, 1.2vw, 16px); line-height: 1.7; color: rgb(138, 138, 150); overflow: hidden; content: ''; top: 0; left: 0; right: 0; height: 2px" role="note">
|
|
5
|
+
<span style="flex-shrink: 0; font-size: 18px; line-height: 1.7" aria-hidden="true">
|
|
6
|
+
_get Default Icon
|
|
7
|
+
</span>
|
|
8
|
+
<div style="flex: 1; min-width: 0">
|
|
9
|
+
Callout
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-card — self-contained, no external CSS needed -->
|
|
3
|
+
<style>
|
|
4
|
+
@media (max-width: 768px) {
|
|
5
|
+
.arc-card .card__inner { padding: 24px 16px; }
|
|
6
|
+
}
|
|
7
|
+
.arc-card[href] .card:hover { background: linear-gradient(135deg, rgba(77, 126, 247,0.3), rgba(139, 92, 246,0.15), rgb(34, 34, 41)); }
|
|
8
|
+
.arc-card .card:hover .card__inner { box-shadow: inset 0 1px 0 rgba(255, 255, 255,0.04), 0 4px 24px rgba(0,0,0,0.2); }
|
|
9
|
+
.arc-card .card:focus-visible { outline: none; box-shadow: 0 0 0 2px rgb(3, 3, 7), 0 0 0 4px rgb(77, 126, 247), 0 0 16px rgba(77,126,247,0.3); border-radius: 14px; }
|
|
10
|
+
</style>
|
|
11
|
+
<div class="arc-card" style="display: block">
|
|
12
|
+
<a class="card" style="position: relative; border-radius: 14px; padding: 1px; background: rgb(24, 24, 30); text-decoration: none; display: block; height: 100%" href="#"><div class="card__inner" style="position: relative; background: rgb(13, 13, 18); border-radius: calc(14px - 1px); padding: 40px 24px; height: 100%">Card</div></a>
|
|
13
|
+
</div>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-code-block — requires code-block.css + tokens.css (or arc-ui.css) -->
|
|
3
|
+
<div class="arc-code-block">
|
|
4
|
+
<div class="code-block">
|
|
5
|
+
<div class="code-block__header">
|
|
6
|
+
<span class="code-block__filename">Filename</span>
|
|
7
|
+
<span class="code-block__lang">Language</span>
|
|
8
|
+
<button
|
|
9
|
+
class="code-block__copy"
|
|
10
|
+
|
|
11
|
+
aria-label="_copied"
|
|
12
|
+
>_copied</button>
|
|
13
|
+
</div>
|
|
14
|
+
<div class="code-block__body">
|
|
15
|
+
<pre class="code-block__pre"><code>Code</code></pre>
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<!-- Auto-generated by @arclight/prism — do not edit manually -->
|
|
2
|
+
<!-- arc-code-block — self-contained, no external CSS needed -->
|
|
3
|
+
<style>
|
|
4
|
+
.arc-code-block .code-block__copy:hover { color: rgb(232, 232, 236);
|
|
5
|
+
border-color: rgb(51, 51, 64); }
|
|
6
|
+
</style>
|
|
7
|
+
<div class="arc-code-block" style="display: block">
|
|
8
|
+
<div class="code-block" style="background: rgb(10, 10, 15); border: 1px solid rgb(34, 34, 41); border-radius: 14px; overflow: hidden">
|
|
9
|
+
<div style="display: flex; align-items: center; justify-content: space-between; padding: 4px 16px; border-bottom: 1px solid rgb(24, 24, 30); background: rgb(13, 13, 18)">
|
|
10
|
+
<span style="font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 12px; color: rgb(124, 124, 137)">Filename</span>
|
|
11
|
+
<span style="font-family: 'Tektur', system-ui, sans-serif; font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: rgb(107, 107, 128)">Language</span>
|
|
12
|
+
<button
|
|
13
|
+
class="code-block__copy" style="display: flex; align-items: center; gap: 4px; background: none; border: 1px solid rgb(34, 34, 41); border-radius: 4px; color: rgb(124, 124, 137); font-family: 'Tektur', system-ui, sans-serif; font-size: 10px; letter-spacing: 1px; text-transform: uppercase; padding: 4px 8px; cursor: pointer"
|
|
14
|
+
|
|
15
|
+
aria-label="_copied"
|
|
16
|
+
>_copied</button>
|
|
17
|
+
</div>
|
|
18
|
+
<div style="padding: 16px; overflow-x: auto">
|
|
19
|
+
<pre style="margin: 0; font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 13px; line-height: 1.8; color: rgb(232, 232, 236); white-space: pre; tab-size: 2"><code>Code</code></pre>
|
|
20
|
+
</div>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|