@jaimevalasek/aioson 1.30.1 → 1.30.2

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.
Files changed (90) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/docs/design-previews/cognitive-core-ui-auth.html +95 -0
  3. package/docs/design-previews/cognitive-core-ui-kanban.html +231 -0
  4. package/docs/design-previews/cognitive-core-ui-list-detail.html +174 -0
  5. package/docs/design-previews/cognitive-core-ui-preview.css +1315 -0
  6. package/docs/design-previews/cognitive-core-ui-settings.html +142 -0
  7. package/docs/design-previews/cognitive-core-ui-website.html +190 -1009
  8. package/docs/design-previews/cognitive-core-ui.html +281 -463
  9. package/docs/design-previews/index.html +83 -31
  10. package/package.json +1 -1
  11. package/src/constants.js +567 -511
  12. package/template/.aioson/docs/play/README.md +2 -0
  13. package/template/.aioson/docs/play/agent-usage-guide.md +7 -1
  14. package/template/.aioson/docs/play/app-compatibility-guide.md +6 -1
  15. package/template/.aioson/docs/play/auth-services-and-testing.md +16 -1
  16. package/template/.aioson/docs/play/manifest-and-runtime.md +23 -0
  17. package/template/.aioson/skills/design/aurora-command-ui/SKILL.md +266 -243
  18. package/template/.aioson/skills/design/aurora-command-ui/references/art-direction.md +293 -293
  19. package/template/.aioson/skills/design/aurora-command-ui/references/components.md +827 -827
  20. package/template/.aioson/skills/design/aurora-command-ui/references/dashboards.md +250 -250
  21. package/template/.aioson/skills/design/aurora-command-ui/references/design-tokens.md +585 -585
  22. package/template/.aioson/skills/design/aurora-command-ui/references/motion.md +365 -365
  23. package/template/.aioson/skills/design/aurora-command-ui/references/patterns.md +485 -482
  24. package/template/.aioson/skills/design/aurora-command-ui/references/websites.md +386 -387
  25. package/template/.aioson/skills/design/bold-editorial-ui/SKILL.md +228 -205
  26. package/template/.aioson/skills/design/bold-editorial-ui/references/art-direction.md +338 -338
  27. package/template/.aioson/skills/design/bold-editorial-ui/references/components.md +977 -977
  28. package/template/.aioson/skills/design/bold-editorial-ui/references/dashboards.md +218 -218
  29. package/template/.aioson/skills/design/bold-editorial-ui/references/design-tokens.md +326 -326
  30. package/template/.aioson/skills/design/bold-editorial-ui/references/motion.md +461 -461
  31. package/template/.aioson/skills/design/bold-editorial-ui/references/patterns.md +293 -293
  32. package/template/.aioson/skills/design/bold-editorial-ui/references/websites.md +352 -352
  33. package/template/.aioson/skills/design/clean-saas-ui/SKILL.md +233 -210
  34. package/template/.aioson/skills/design/clean-saas-ui/references/art-direction.md +319 -319
  35. package/template/.aioson/skills/design/clean-saas-ui/references/components.md +365 -365
  36. package/template/.aioson/skills/design/clean-saas-ui/references/dashboards.md +196 -196
  37. package/template/.aioson/skills/design/clean-saas-ui/references/design-tokens.md +244 -244
  38. package/template/.aioson/skills/design/clean-saas-ui/references/motion.md +235 -235
  39. package/template/.aioson/skills/design/clean-saas-ui/references/patterns.md +215 -215
  40. package/template/.aioson/skills/design/clean-saas-ui/references/websites.md +295 -295
  41. package/template/.aioson/skills/design/cognitive-core-ui/SKILL.md +239 -203
  42. package/template/.aioson/skills/design/cognitive-core-ui/references/art-direction.md +339 -339
  43. package/template/.aioson/skills/design/cognitive-core-ui/references/components.md +417 -407
  44. package/template/.aioson/skills/design/cognitive-core-ui/references/dashboards.md +289 -272
  45. package/template/.aioson/skills/design/cognitive-core-ui/references/design-tokens.md +525 -524
  46. package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +279 -279
  47. package/template/.aioson/skills/design/cognitive-core-ui/references/patterns.md +355 -289
  48. package/template/.aioson/skills/design/cognitive-core-ui/references/websites.md +443 -437
  49. package/template/.aioson/skills/design/glassmorphism-ui/SKILL.md +245 -222
  50. package/template/.aioson/skills/design/glassmorphism-ui/references/art-direction.md +159 -159
  51. package/template/.aioson/skills/design/glassmorphism-ui/references/components.md +498 -498
  52. package/template/.aioson/skills/design/glassmorphism-ui/references/dashboards.md +236 -236
  53. package/template/.aioson/skills/design/glassmorphism-ui/references/design-tokens.md +274 -274
  54. package/template/.aioson/skills/design/glassmorphism-ui/references/motion.md +355 -355
  55. package/template/.aioson/skills/design/glassmorphism-ui/references/patterns.md +198 -198
  56. package/template/.aioson/skills/design/glassmorphism-ui/references/websites.md +307 -307
  57. package/template/.aioson/skills/design/interface-design/SKILL.md +68 -47
  58. package/template/.aioson/skills/design/interface-design/references/components-and-states.md +105 -105
  59. package/template/.aioson/skills/design/interface-design/references/design-directions.md +101 -101
  60. package/template/.aioson/skills/design/interface-design/references/handoff-and-quality.md +92 -71
  61. package/template/.aioson/skills/design/interface-design/references/intent-and-domain.md +74 -74
  62. package/template/.aioson/skills/design/interface-design/references/tokens-and-depth.md +173 -173
  63. package/template/.aioson/skills/design/neo-brutalist-ui/SKILL.md +236 -213
  64. package/template/.aioson/skills/design/neo-brutalist-ui/references/art-direction.md +228 -228
  65. package/template/.aioson/skills/design/neo-brutalist-ui/references/components.md +855 -855
  66. package/template/.aioson/skills/design/neo-brutalist-ui/references/dashboards.md +334 -334
  67. package/template/.aioson/skills/design/neo-brutalist-ui/references/design-tokens.md +342 -342
  68. package/template/.aioson/skills/design/neo-brutalist-ui/references/motion.md +286 -286
  69. package/template/.aioson/skills/design/neo-brutalist-ui/references/patterns.md +458 -458
  70. package/template/.aioson/skills/design/neo-brutalist-ui/references/websites.md +723 -723
  71. package/template/.aioson/skills/design/premium-command-center-ui/SKILL.md +83 -62
  72. package/template/.aioson/skills/design/premium-command-center-ui/references/operations.md +74 -74
  73. package/template/.aioson/skills/design/premium-command-center-ui/references/patterns.md +116 -116
  74. package/template/.aioson/skills/design/premium-command-center-ui/references/validation.md +47 -47
  75. package/template/.aioson/skills/design/premium-command-center-ui/references/visual-system.md +215 -215
  76. package/template/.aioson/skills/design/pt.squarespace.com/.skill-meta.json +31 -31
  77. package/template/.aioson/skills/design/pt.squarespace.com/SKILL.md +94 -66
  78. package/template/.aioson/skills/design/pt.squarespace.com/references/components.md +366 -366
  79. package/template/.aioson/skills/design/pt.squarespace.com/references/design-tokens.md +150 -150
  80. package/template/.aioson/skills/design/pt.squarespace.com/references/motion.md +270 -270
  81. package/template/.aioson/skills/design/pt.squarespace.com/references/patterns.md +189 -189
  82. package/template/.aioson/skills/design/pt.squarespace.com/references/websites.md +161 -161
  83. package/template/.aioson/skills/design/warm-craft-ui/SKILL.md +232 -209
  84. package/template/.aioson/skills/design/warm-craft-ui/references/art-direction.md +324 -324
  85. package/template/.aioson/skills/design/warm-craft-ui/references/components.md +508 -508
  86. package/template/.aioson/skills/design/warm-craft-ui/references/dashboards.md +223 -223
  87. package/template/.aioson/skills/design/warm-craft-ui/references/design-tokens.md +374 -374
  88. package/template/.aioson/skills/design/warm-craft-ui/references/motion.md +356 -356
  89. package/template/.aioson/skills/design/warm-craft-ui/references/patterns.md +288 -288
  90. package/template/.aioson/skills/design/warm-craft-ui/references/websites.md +289 -289
@@ -1,198 +1,198 @@
1
- # Patterns — Glassmorphism UI
2
-
3
- Page composition patterns for apps and dashboards. The substrate always comes first.
4
-
5
- ---
6
-
7
- ## The Substrate Rule
8
-
9
- Every layout starts with the gradient background applied to the root container (body, html, or `#app`). This is the "glass substrate" — the gradient that makes the glass visible.
10
-
11
- ```css
12
- body {
13
- min-height: 100vh;
14
- background: var(--bg-gradient);
15
- background-attachment: fixed; /* gradient stays fixed as content scrolls */
16
- }
17
- ```
18
-
19
- `background-attachment: fixed` is recommended so the gradient doesn't scroll with the content. Cards will then float over a stable gradient substrate, which looks far more polished.
20
-
21
- ---
22
-
23
- ## App Shell
24
-
25
- The standard layout for apps, dashboards, and admin panels.
26
-
27
- ```
28
- ┌──────────────────────────────────────────────────────────────────┐
29
- │ GRADIENT BACKGROUND (body, fixed attachment) │
30
- │ │
31
- │ ┌──────────────┐ ┌──────────────────────────────────────────┐ │
32
- │ │ GLASS SIDEBAR│ │ GLASS TOP BAR (sticky, blur-lg) │ │
33
- │ │ 256px │ │ Page title / breadcrumb + actions │ │
34
- │ │ blur-lg │ ├──────────────────────────────────────────┤ │
35
- │ │ border-right │ │ CONTENT AREA (padding 24px) │ │
36
- │ │ glass-border │ │ │ │
37
- │ │ │ │ Glass cards floating over │ │
38
- │ │ Logo │ │ gradient substrate │ │
39
- │ │ Nav groups │ │ │ │
40
- │ │ Nav items │ │ │ │
41
- │ │ │ │ │ │
42
- │ │ User footer │ │ │ │
43
- │ └──────────────┘ └──────────────────────────────────────────┘ │
44
- └──────────────────────────────────────────────────────────────────┘
45
- ```
46
-
47
- Key decisions:
48
- - Sidebar: `position: fixed`, `backdrop-filter: blur(24px)` — gradient shows through
49
- - Top bar: `position: sticky`, `top: 0`, `backdrop-filter: blur(24px)` — inside content area, not full width
50
- - Content: `margin-left: 256px`, `padding: 24px`, `min-height: 100vh`
51
- - Cards in content: glass cards with `backdrop-filter: blur(16px)` — 2nd glass layer over substrate
52
-
53
- ---
54
-
55
- ## Page Patterns
56
-
57
- ### 1. Dashboard Page
58
-
59
- ```
60
- Content layout (top to bottom):
61
- ├─ Page header: title + date range selector + export button
62
- ├─ Stat cards row: 4 glass stat cards, equal width, 24px gap
63
- │ Each: metric label + large number (optionally gradient text) + trend badge
64
- ├─ Primary chart: full-width glass card, area/line chart with gradient fill
65
- ├─ Secondary row: 2 columns
66
- │ Left (60%): detailed chart or data table (glass card)
67
- │ Right (40%): donut/distribution chart or top-N list (glass card)
68
- └─ Bottom section: glass table with full data
69
- ```
70
-
71
- Accent moments:
72
- - Hero insight: 1 stat gets gradient text, slightly larger font
73
- - Chart fills: accent gradient (violet → blue), semi-transparent area fills
74
- - Table: glass card container, row hover with glass-bg-hover
75
-
76
- ### 2. Detail Page
77
-
78
- ```
79
- Content layout:
80
- ├─ Glass header card (radius-2xl): avatar/logo + name + status badge + action buttons
81
- ├─ Tab bar (glass strip): Properties / Activity / Settings / Relations
82
- └─ Tab content (glass cards per section):
83
- Properties: 2-column grid of label-value pairs
84
- Activity: timeline list (glass card, items with glass-border dividers)
85
- Settings: form groups in glass cards
86
- Relations: linked records grid (mini glass cards)
87
- ```
88
-
89
- ### 3. List Page
90
-
91
- ```
92
- Content layout:
93
- ├─ Glass filter bar (sticky): search input + filter chips + sort dropdown + count badge
94
- ├─ Glass table card (full width):
95
- │ Header: sticky, border-bottom glass-border, column labels text-xs uppercase text-muted
96
- │ Rows: 48px height, hover glass-bg-hover, checkbox left, actions on hover right
97
- │ Inline actions: appear on row hover (ghost buttons: edit, view, delete)
98
- └─ Glass pagination bar: page info + prev/next glass buttons + page size selector
99
- ```
100
-
101
- Scrolling: table scrolls horizontally on mobile (never collapses to cards — see anti-patterns).
102
-
103
- ### 4. Settings Page
104
-
105
- ```
106
- Content layout (two-column):
107
- Left (240px): glass sub-navigation
108
- ├─ Nav groups: Profile / Security / Notifications / Billing / Integrations
109
- └─ Glass sidebar style (blur-md, border-right glass-border)
110
- Right (main): glass form cards per section
111
- ├─ Section card: glass card with section title + divider + form fields
112
- ├─ Form fields: labeled inputs, helper text, inline validation
113
- └─ Save/cancel footer: sticky within card or at page bottom
114
- ```
115
-
116
- ### 5. Auth Page (login / signup / forgot password)
117
-
118
- ```
119
- Layout: full-viewport gradient background
120
- Optional: 2-3 decorative gradient orbs (200-400px, absolute positioned, blur-xl, opacity 0.4)
121
-
122
- Centered glass card (hero variant):
123
- max-width: 420px
124
- border-radius: var(--radius-3xl)
125
- backdrop-filter: var(--glass-blur-lg)
126
- padding: var(--space-10)
127
-
128
- Inside:
129
- Logo: 40px, centered, mb-8
130
- Title: text-2xl weight-bold text-heading, centered
131
- Subtitle: text-sm text-secondary, centered, mb-8
132
- Form: email input + password input + forgot link
133
- CTA: primary button full-width (accent-gradient)
134
- Divider: "or continue with"
135
- Social buttons: glass buttons (Google, GitHub, etc.)
136
- Footer link: "Don't have an account? Sign up"
137
- ```
138
-
139
- Orb placement example: top-right violet orb (300px), bottom-left blue orb (250px), centered faint pink orb (400px). All with extreme blur to look like soft light.
140
-
141
- ### 6. Onboarding (multi-step)
142
-
143
- ```
144
- Layout: full-viewport gradient background
145
-
146
- Step progress (glass strip): centered at top
147
- Step indicators: numbered circles (active: accent-gradient fill, completed: accent border + check, pending: glass-border)
148
- Connector lines: glass-border, accent-gradient when completed
149
-
150
- Centered glass card:
151
- max-width: 560px, radius-3xl, blur-lg, padding-10
152
- Inside:
153
- Step title: text-2xl weight-bold
154
- Step description: text-sm text-secondary
155
- Step content: varies (form, selection grid, confirmation)
156
- Navigation: back (ghost) + next (primary gradient) buttons
157
- Step count: text-xs text-muted, centered below card
158
-
159
- Background gradient shifts subtly between steps (hue rotation 10-15 degrees — very subtle).
160
- ```
161
-
162
- ---
163
-
164
- ## Responsive
165
-
166
- ### Breakpoints
167
- - `< 768px`: mobile layout (bottom tab bar, no sidebar)
168
- - `768px – 1024px`: tablet layout (collapsible sidebar or icon-only)
169
- - `> 1024px`: desktop layout (full sidebar)
170
-
171
- ### Mobile layout
172
- - Sidebar → **glass bottom tab bar** (not hamburger menu)
173
- - Bottom tab bar: `position: fixed`, `bottom: 0`, `left: 0`, `right: 0`, `height: 64px`
174
- - Glass surface: `background: var(--glass-bg-active)` + `backdrop-filter: var(--glass-blur-lg)`
175
- - Border top: `1px solid var(--glass-border)`
176
- - 4-5 icon + label tabs, active with accent color
177
- - Safe area padding: `padding-bottom: env(safe-area-inset-bottom)` for iOS notch
178
-
179
- ### Glass adjustments by breakpoint
180
- - Mobile: use `blur-sm` (8px) for cards (performance), `blur-md` (16px) only for bottom sheet
181
- - Tablet: use `blur-md` (16px) for cards
182
- - Desktop: full `blur-md` (16px) for cards, `blur-lg` (24px) for sidebar/nav
183
-
184
- ### Background gradient on mobile
185
- Simplify to 2-3 color stops (fewer is faster):
186
- ```css
187
- @media (max-width: 768px) {
188
- body {
189
- background: linear-gradient(135deg, #F0EEF6 0%, #D8E0F0 100%);
190
- }
191
- }
192
- ```
193
-
194
- ### Content adjustments
195
- - Stat cards: 2 columns on mobile (instead of 4)
196
- - Tables: horizontal scroll (never collapse to card list)
197
- - Sidebar hidden on mobile, accessible via bottom tab bar
198
- - Modal: full-screen on mobile with `border-radius: radius-3xl radius-3xl 0 0` and slides up
1
+ # Patterns — Glassmorphism UI
2
+
3
+ Page composition patterns for apps and dashboards. The substrate always comes first.
4
+
5
+ ---
6
+
7
+ ## The Substrate Rule
8
+
9
+ Every layout starts with the gradient background applied to the root container (body, html, or `#app`). This is the "glass substrate" — the gradient that makes the glass visible.
10
+
11
+ ```css
12
+ body {
13
+ min-height: 100vh;
14
+ background: var(--bg-gradient);
15
+ background-attachment: fixed; /* gradient stays fixed as content scrolls */
16
+ }
17
+ ```
18
+
19
+ `background-attachment: fixed` is recommended so the gradient doesn't scroll with the content. Cards will then float over a stable gradient substrate, which looks far more polished.
20
+
21
+ ---
22
+
23
+ ## App Shell
24
+
25
+ The standard layout for apps, dashboards, and admin panels.
26
+
27
+ ```
28
+ ┌──────────────────────────────────────────────────────────────────┐
29
+ │ GRADIENT BACKGROUND (body, fixed attachment) │
30
+ │ │
31
+ │ ┌──────────────┐ ┌──────────────────────────────────────────┐ │
32
+ │ │ GLASS SIDEBAR│ │ GLASS TOP BAR (sticky, blur-lg) │ │
33
+ │ │ 256px │ │ Page title / breadcrumb + actions │ │
34
+ │ │ blur-lg │ ├──────────────────────────────────────────┤ │
35
+ │ │ border-right │ │ CONTENT AREA (padding 24px) │ │
36
+ │ │ glass-border │ │ │ │
37
+ │ │ │ │ Glass cards floating over │ │
38
+ │ │ Logo │ │ gradient substrate │ │
39
+ │ │ Nav groups │ │ │ │
40
+ │ │ Nav items │ │ │ │
41
+ │ │ │ │ │ │
42
+ │ │ User footer │ │ │ │
43
+ │ └──────────────┘ └──────────────────────────────────────────┘ │
44
+ └──────────────────────────────────────────────────────────────────┘
45
+ ```
46
+
47
+ Key decisions:
48
+ - Sidebar: `position: fixed`, `backdrop-filter: blur(24px)` — gradient shows through
49
+ - Top bar: `position: sticky`, `top: 0`, `backdrop-filter: blur(24px)` — inside content area, not full width
50
+ - Content: `margin-left: 256px`, `padding: 24px`, `min-height: 100vh`
51
+ - Cards in content: glass cards with `backdrop-filter: blur(16px)` — 2nd glass layer over substrate
52
+
53
+ ---
54
+
55
+ ## Page Patterns
56
+
57
+ ### 1. Dashboard Page
58
+
59
+ ```
60
+ Content layout (top to bottom):
61
+ ├─ Page header: title + date range selector + export button
62
+ ├─ Stat cards row: 4 glass stat cards, equal width, 24px gap
63
+ │ Each: metric label + large number (optionally gradient text) + trend badge
64
+ ├─ Primary chart: full-width glass card, area/line chart with gradient fill
65
+ ├─ Secondary row: 2 columns
66
+ │ Left (60%): detailed chart or data table (glass card)
67
+ │ Right (40%): donut/distribution chart or top-N list (glass card)
68
+ └─ Bottom section: glass table with full data
69
+ ```
70
+
71
+ Accent moments:
72
+ - Hero insight: 1 stat gets gradient text, slightly larger font
73
+ - Chart fills: accent gradient (violet → blue), semi-transparent area fills
74
+ - Table: glass card container, row hover with glass-bg-hover
75
+
76
+ ### 2. Detail Page
77
+
78
+ ```
79
+ Content layout:
80
+ ├─ Glass header card (radius-2xl): avatar/logo + name + status badge + action buttons
81
+ ├─ Tab bar (glass strip): Properties / Activity / Settings / Relations
82
+ └─ Tab content (glass cards per section):
83
+ Properties: 2-column grid of label-value pairs
84
+ Activity: timeline list (glass card, items with glass-border dividers)
85
+ Settings: form groups in glass cards
86
+ Relations: linked records grid (mini glass cards)
87
+ ```
88
+
89
+ ### 3. List Page
90
+
91
+ ```
92
+ Content layout:
93
+ ├─ Glass filter bar (sticky): search input + filter chips + sort dropdown + count badge
94
+ ├─ Glass table card (full width):
95
+ │ Header: sticky, border-bottom glass-border, column labels text-xs uppercase text-muted
96
+ │ Rows: 48px height, hover glass-bg-hover, checkbox left, actions on hover right
97
+ │ Inline actions: appear on row hover (ghost buttons: edit, view, delete)
98
+ └─ Glass pagination bar: page info + prev/next glass buttons + page size selector
99
+ ```
100
+
101
+ Scrolling: table scrolls horizontally on mobile (never collapses to cards — see anti-patterns).
102
+
103
+ ### 4. Settings Page
104
+
105
+ ```
106
+ Content layout (two-column):
107
+ Left (240px): glass sub-navigation
108
+ ├─ Nav groups: Profile / Security / Notifications / Billing / Integrations
109
+ └─ Glass sidebar style (blur-md, border-right glass-border)
110
+ Right (main): glass form cards per section
111
+ ├─ Section card: glass card with section title + divider + form fields
112
+ ├─ Form fields: labeled inputs, helper text, inline validation
113
+ └─ Save/cancel footer: sticky within card or at page bottom
114
+ ```
115
+
116
+ ### 5. Auth Page (login / signup / forgot password)
117
+
118
+ ```
119
+ Layout: full-viewport gradient background
120
+ Optional: full-bleed ambient gradient wash (absolute positioned, blur-lg, opacity 0.22)
121
+
122
+ Centered glass card (hero variant):
123
+ max-width: 420px
124
+ border-radius: var(--radius-3xl)
125
+ backdrop-filter: var(--glass-blur-lg)
126
+ padding: var(--space-10)
127
+
128
+ Inside:
129
+ Logo: 40px, centered, mb-8
130
+ Title: text-2xl weight-bold text-heading, centered
131
+ Subtitle: text-sm text-secondary, centered, mb-8
132
+ Form: email input + password input + forgot link
133
+ CTA: primary button full-width (accent-gradient)
134
+ Divider: "or continue with"
135
+ Social buttons: glass buttons (Google, GitHub, etc.)
136
+ Footer link: "Don't have an account? Sign up"
137
+ ```
138
+
139
+ Ambient placement example: violet wash from the top-right, blue wash from the bottom-left, and a faint pink center highlight. Keep all layers broad enough to read as atmosphere, not shapes.
140
+
141
+ ### 6. Onboarding (multi-step)
142
+
143
+ ```
144
+ Layout: full-viewport gradient background
145
+
146
+ Step progress (glass strip): centered at top
147
+ Step indicators: numbered circles (active: accent-gradient fill, completed: accent border + check, pending: glass-border)
148
+ Connector lines: glass-border, accent-gradient when completed
149
+
150
+ Centered glass card:
151
+ max-width: 560px, radius-3xl, blur-lg, padding-10
152
+ Inside:
153
+ Step title: text-2xl weight-bold
154
+ Step description: text-sm text-secondary
155
+ Step content: varies (form, selection grid, confirmation)
156
+ Navigation: back (ghost) + next (primary gradient) buttons
157
+ Step count: text-xs text-muted, centered below card
158
+
159
+ Background gradient shifts subtly between steps (hue rotation 10-15 degrees — very subtle).
160
+ ```
161
+
162
+ ---
163
+
164
+ ## Responsive
165
+
166
+ ### Breakpoints
167
+ - `< 768px`: mobile layout (bottom tab bar, no sidebar)
168
+ - `768px – 1024px`: tablet layout (collapsible sidebar or icon-only)
169
+ - `> 1024px`: desktop layout (full sidebar)
170
+
171
+ ### Mobile layout
172
+ - Sidebar → **glass bottom tab bar** (not hamburger menu)
173
+ - Bottom tab bar: `position: fixed`, `bottom: 0`, `left: 0`, `right: 0`, `height: 64px`
174
+ - Glass surface: `background: var(--glass-bg-active)` + `backdrop-filter: var(--glass-blur-lg)`
175
+ - Border top: `1px solid var(--glass-border)`
176
+ - 4-5 icon + label tabs, active with accent color
177
+ - Safe area padding: `padding-bottom: env(safe-area-inset-bottom)` for iOS notch
178
+
179
+ ### Glass adjustments by breakpoint
180
+ - Mobile: use `blur-sm` (8px) for cards (performance), `blur-md` (16px) only for bottom sheet
181
+ - Tablet: use `blur-md` (16px) for cards
182
+ - Desktop: full `blur-md` (16px) for cards, `blur-lg` (24px) for sidebar/nav
183
+
184
+ ### Background gradient on mobile
185
+ Simplify to 2-3 color stops (fewer is faster):
186
+ ```css
187
+ @media (max-width: 768px) {
188
+ body {
189
+ background: linear-gradient(135deg, #F0EEF6 0%, #D8E0F0 100%);
190
+ }
191
+ }
192
+ ```
193
+
194
+ ### Content adjustments
195
+ - Stat cards: 2 columns on mobile (instead of 4)
196
+ - Tables: horizontal scroll (never collapse to card list)
197
+ - Sidebar hidden on mobile, accessible via bottom tab bar
198
+ - Modal: full-screen on mobile with `border-radius: radius-3xl radius-3xl 0 0` and slides up