rizzo-css 0.0.85 → 0.0.86

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 (112) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/scaffold/landing/favicon.svg +18 -0
  4. package/scaffold/landing/index.html +20 -0
  5. package/scaffold/minimal/favicon.svg +18 -0
  6. package/scaffold/minimal/index.html +17 -0
  7. package/scaffold/react/base/index.html +1 -0
  8. package/scaffold/react/base/package.json +1 -1
  9. package/scaffold/react/base/public/favicon.svg +18 -0
  10. package/scaffold/react/variants/full/package.json +1 -1
  11. package/scaffold/react/variants/full/src/App.tsx +11 -1
  12. package/scaffold/react/variants/full/src/index.css +113 -0
  13. package/scaffold/react/variants/full/src/layouts/DocsLayout.tsx +29 -1
  14. package/scaffold/react/variants/full/src/views/DocsComponents.tsx +0 -1
  15. package/scaffold/react/variants/full/src/views/DocsGettingStarted.tsx +0 -1
  16. package/scaffold/react/variants/full/src/views/DocsIndex.tsx +0 -1
  17. package/scaffold/shared/favicon.svg +18 -0
  18. package/scaffold/svelte/base/src/app.html +1 -0
  19. package/scaffold/svelte/base/src/routes/+layout.svelte +10 -1
  20. package/scaffold/svelte/base/static/favicon.svg +18 -0
  21. package/scaffold/svelte/variants/full/src/app.html +1 -0
  22. package/scaffold/svelte/variants/full/src/routes/+layout.svelte +15 -2
  23. package/scaffold/svelte/variants/full/src/routes/docs/+layout.svelte +117 -3
  24. package/scaffold/svelte/variants/full/src/routes/docs/+layout.ts +3 -0
  25. package/scaffold/svelte/variants/full/src/routes/docs/+page.svelte +0 -1
  26. package/scaffold/svelte/variants/full/src/routes/docs/+page.ts +7 -0
  27. package/scaffold/svelte/variants/full/src/routes/docs/components/+page.svelte +0 -5
  28. package/scaffold/svelte/variants/full/src/routes/docs/components/+page.ts +6 -0
  29. package/scaffold/svelte/variants/full/src/routes/docs/getting-started/+page.svelte +0 -5
  30. package/scaffold/svelte/variants/full/src/routes/docs/getting-started/+page.ts +6 -0
  31. package/scaffold/svelte/variants/full/src/routes/docs/overview/+page.ts +6 -0
  32. package/scaffold/svelte/variants/full/src/routes/themes/+page.svelte +0 -7
  33. package/scaffold/svelte/variants/full/static/favicon.svg +18 -0
  34. package/scaffold/vanilla/README-RIZZO.md +1 -1
  35. package/scaffold/vanilla/components/accordion.html +21 -0
  36. package/scaffold/vanilla/components/alert-dialog.html +21 -0
  37. package/scaffold/vanilla/components/alert.html +21 -0
  38. package/scaffold/vanilla/components/aspect-ratio.html +21 -0
  39. package/scaffold/vanilla/components/avatar.html +21 -0
  40. package/scaffold/vanilla/components/back-to-top.html +21 -0
  41. package/scaffold/vanilla/components/badge.html +21 -0
  42. package/scaffold/vanilla/components/breadcrumb.html +21 -0
  43. package/scaffold/vanilla/components/button-group.html +21 -0
  44. package/scaffold/vanilla/components/button.html +21 -0
  45. package/scaffold/vanilla/components/calendar.html +21 -0
  46. package/scaffold/vanilla/components/cards.html +21 -0
  47. package/scaffold/vanilla/components/carousel.html +21 -0
  48. package/scaffold/vanilla/components/chart.html +21 -0
  49. package/scaffold/vanilla/components/collapsible.html +21 -0
  50. package/scaffold/vanilla/components/command.html +21 -0
  51. package/scaffold/vanilla/components/context-menu.html +21 -0
  52. package/scaffold/vanilla/components/copy-to-clipboard.html +21 -0
  53. package/scaffold/vanilla/components/dashboard.html +21 -0
  54. package/scaffold/vanilla/components/direction.html +21 -0
  55. package/scaffold/vanilla/components/divider.html +21 -0
  56. package/scaffold/vanilla/components/docs-sidebar.html +21 -0
  57. package/scaffold/vanilla/components/dropdown.html +21 -0
  58. package/scaffold/vanilla/components/empty.html +21 -0
  59. package/scaffold/vanilla/components/font-switcher.html +21 -0
  60. package/scaffold/vanilla/components/footer.html +21 -0
  61. package/scaffold/vanilla/components/forms.html +21 -0
  62. package/scaffold/vanilla/components/hover-card.html +21 -0
  63. package/scaffold/vanilla/components/icons.html +21 -0
  64. package/scaffold/vanilla/components/index.html +21 -0
  65. package/scaffold/vanilla/components/input-group.html +21 -0
  66. package/scaffold/vanilla/components/input-otp.html +21 -0
  67. package/scaffold/vanilla/components/kbd.html +21 -0
  68. package/scaffold/vanilla/components/label.html +21 -0
  69. package/scaffold/vanilla/components/menubar.html +21 -0
  70. package/scaffold/vanilla/components/modal.html +21 -0
  71. package/scaffold/vanilla/components/navbar.html +21 -0
  72. package/scaffold/vanilla/components/pagination.html +21 -0
  73. package/scaffold/vanilla/components/popover.html +21 -0
  74. package/scaffold/vanilla/components/progress-bar.html +21 -0
  75. package/scaffold/vanilla/components/range-calendar.html +21 -0
  76. package/scaffold/vanilla/components/resizable.html +21 -0
  77. package/scaffold/vanilla/components/scroll-area.html +21 -0
  78. package/scaffold/vanilla/components/search.html +21 -0
  79. package/scaffold/vanilla/components/separator.html +21 -0
  80. package/scaffold/vanilla/components/settings.html +21 -0
  81. package/scaffold/vanilla/components/sheet.html +21 -0
  82. package/scaffold/vanilla/components/skeleton.html +21 -0
  83. package/scaffold/vanilla/components/slider.html +21 -0
  84. package/scaffold/vanilla/components/sound-effects.html +21 -0
  85. package/scaffold/vanilla/components/spinner.html +21 -0
  86. package/scaffold/vanilla/components/switch.html +21 -0
  87. package/scaffold/vanilla/components/table.html +21 -0
  88. package/scaffold/vanilla/components/tabs.html +21 -0
  89. package/scaffold/vanilla/components/theme-switcher.html +21 -0
  90. package/scaffold/vanilla/components/toast.html +21 -0
  91. package/scaffold/vanilla/components/toggle-group.html +21 -0
  92. package/scaffold/vanilla/components/toggle.html +21 -0
  93. package/scaffold/vanilla/components/tooltip.html +21 -0
  94. package/scaffold/vanilla/favicon.svg +18 -0
  95. package/scaffold/vanilla/index.html +21 -0
  96. package/scaffold/vanilla/variants/dashboard/favicon.svg +18 -0
  97. package/scaffold/vanilla/variants/dashboard/index.html +1 -0
  98. package/scaffold/vanilla/variants/docs/favicon.svg +18 -0
  99. package/scaffold/vanilla/variants/docs/index.html +1 -0
  100. package/scaffold/vanilla/variants/full/favicon.svg +18 -0
  101. package/scaffold/vanilla/variants/full/index.html +19 -0
  102. package/scaffold/vue/Footer.vue +43 -4
  103. package/scaffold/vue/base/index.html +1 -0
  104. package/scaffold/vue/base/package.json +1 -1
  105. package/scaffold/vue/base/public/favicon.svg +18 -0
  106. package/scaffold/vue/variants/full/package.json +1 -1
  107. package/scaffold/vue/variants/full/src/App.vue +13 -1
  108. package/scaffold/vue/variants/full/src/layouts/DocsLayout.vue +116 -2
  109. package/scaffold/vue/variants/full/src/router/index.ts +31 -4
  110. package/scaffold/vue/variants/full/src/views/DocsComponents.vue +0 -1
  111. package/scaffold/vue/variants/full/src/views/DocsGettingStarted.vue +0 -1
  112. package/scaffold/vue/variants/full/src/views/DocsIndex.vue +0 -1
@@ -67,6 +67,12 @@
67
67
  </div>
68
68
  <div class="docs__main">
69
69
  <div class="docs__container">
70
+ <header class="docs__header">
71
+ <h1 class="docs__title">{$page.data.title ?? 'Docs'}</h1>
72
+ {#if $page.data.description}
73
+ <p class="docs__description">{$page.data.description}</p>
74
+ {/if}
75
+ </header>
70
76
  <div class="docs__content">
71
77
  {@render children()}
72
78
  </div>
@@ -76,7 +82,7 @@
76
82
  <BackToTop threshold={300} />
77
83
 
78
84
  <svelte:head>
79
- <title>Docs — Rizzo CSS</title>
85
+ <title>{$page.data.title ?? 'Docs'} — Rizzo CSS</title>
80
86
  </svelte:head>
81
87
 
82
88
  <style>
@@ -88,12 +94,34 @@
88
94
  margin: 0 auto;
89
95
  padding: 0 var(--content-padding-x);
90
96
  }
97
+ :global(.docs__header) {
98
+ margin-bottom: var(--section-spacing-lg);
99
+ padding-bottom: var(--spacing-8);
100
+ border-bottom: 1px solid var(--border);
101
+ }
102
+ :global(.docs__title) {
103
+ font-size: var(--font-size-5xl);
104
+ font-weight: var(--font-weight-bold);
105
+ color: var(--text);
106
+ margin: 0 0 var(--spacing-4) 0;
107
+ line-height: var(--line-height-tight);
108
+ }
109
+ :global(.docs__description) {
110
+ font-size: var(--font-size-xl);
111
+ color: var(--text);
112
+ margin: 0;
113
+ line-height: var(--line-height-relaxed);
114
+ }
91
115
  :global(.docs__content) {
92
116
  width: 100%;
93
117
  min-width: 0;
94
118
  color: var(--text);
95
119
  line-height: var(--line-height-relaxed);
96
120
  }
121
+ :global(.docs__content h2),
122
+ :global(.docs__content h3) {
123
+ scroll-margin-top: var(--scroll-margin-below-header);
124
+ }
97
125
  :global(.docs__content h2) {
98
126
  font-size: var(--font-size-4xl);
99
127
  font-weight: var(--font-weight-bold);
@@ -110,20 +138,80 @@
110
138
  margin-bottom: var(--spacing-4);
111
139
  color: var(--text);
112
140
  }
141
+ :global(.docs__content h4) {
142
+ font-size: var(--font-size-2xl);
143
+ font-weight: var(--font-weight-semibold);
144
+ margin-top: var(--spacing-6);
145
+ margin-bottom: var(--spacing-3);
146
+ color: var(--text);
147
+ }
113
148
  :global(.docs__content p) {
114
149
  font-size: var(--font-size-base);
115
150
  margin-bottom: var(--spacing-5);
116
151
  }
117
- :global(.docs__content ul) {
152
+ :global(.docs__content ul),
153
+ :global(.docs__content ol) {
118
154
  margin-bottom: var(--spacing-5);
119
155
  padding-left: var(--spacing-8);
120
156
  }
157
+ :global(.docs__content li) {
158
+ margin-bottom: var(--spacing-2);
159
+ }
160
+ :global(.docs__content code) {
161
+ background-color: var(--background-alt);
162
+ color: var(--accent-fg);
163
+ padding: var(--spacing-0-125) var(--spacing-0-375);
164
+ border-radius: var(--radius);
165
+ font-family: var(--font-family-mono);
166
+ font-size: var(--font-size-sm);
167
+ }
168
+ :global(.docs__content pre) {
169
+ background-color: var(--background-alt);
170
+ border: 1px solid var(--border);
171
+ border-radius: var(--radius-lg);
172
+ padding: var(--spacing-6);
173
+ overflow-x: auto;
174
+ margin-bottom: var(--spacing-6);
175
+ font-size: var(--font-size-sm);
176
+ }
177
+ :global(.docs__content pre code) {
178
+ background-color: transparent;
179
+ color: var(--text);
180
+ padding: 0;
181
+ font-size: inherit;
182
+ }
183
+ :global(.docs__content blockquote) {
184
+ border-left: var(--spacing-1) solid var(--accent);
185
+ padding-left: var(--spacing-6);
186
+ margin: var(--spacing-6) 0;
187
+ color: var(--text-dim);
188
+ font-style: italic;
189
+ }
190
+ :global(.docs__content table) {
191
+ width: 100%;
192
+ border-collapse: collapse;
193
+ margin-bottom: var(--spacing-6);
194
+ }
195
+ :global(.docs__content th),
196
+ :global(.docs__content td) {
197
+ padding: var(--spacing-3);
198
+ text-align: left;
199
+ border-bottom: 1px solid var(--border);
200
+ }
201
+ :global(.docs__content th) {
202
+ font-weight: var(--font-weight-semibold);
203
+ background-color: var(--background-alt);
204
+ }
121
205
  :global(.docs__content a) {
206
+ text-decoration: none;
207
+ }
208
+ :global(.docs__content a:not(.docs-sidebar__link):not(.docs-sidebar__sublink):not(.dashboard__nav-link):not(.component-card-link):not(.block-card-link):not(.navbar__link):not(.navbar__brand-link):not(.footer__link):not(.breadcrumb__link):not(.pagination__link)) {
122
209
  color: var(--accent-fg);
123
210
  text-decoration: underline;
124
211
  text-underline-offset: 0.15em;
212
+ transition: color var(--transition-base);
125
213
  }
126
- :global(.docs__content a:hover) {
214
+ :global(.docs__content a:not(.docs-sidebar__link):not(.docs-sidebar__sublink):not(.dashboard__nav-link):not(.component-card-link):not(.block-card-link):not(.navbar__link):not(.navbar__brand-link):not(.footer__link):not(.breadcrumb__link):not(.pagination__link)):hover {
127
215
  color: var(--accent-fg-hover);
128
216
  }
129
217
  :global(.docs__content .component-card-link),
@@ -134,4 +222,30 @@
134
222
  :global(.docs__content .block-card-link *) {
135
223
  text-decoration: none;
136
224
  }
225
+ :global(.docs__content hr) {
226
+ border: none;
227
+ border-top: 1px solid var(--border);
228
+ margin: var(--spacing-8) 0;
229
+ }
230
+ :global(.docs__content .example) {
231
+ background-color: var(--background-alt);
232
+ border: 1px solid var(--border);
233
+ border-radius: var(--radius-lg);
234
+ padding: var(--spacing-6);
235
+ margin: var(--spacing-6) 0;
236
+ }
237
+ :global(.docs__content section) {
238
+ margin-bottom: var(--section-spacing-lg);
239
+ }
240
+ :global(.docs__content section:last-child) {
241
+ margin-bottom: 0;
242
+ }
243
+ @media (width <= 640px) {
244
+ :global(.docs__title) {
245
+ font-size: var(--font-size-4xl);
246
+ }
247
+ :global(.docs__description) {
248
+ font-size: var(--font-size-lg);
249
+ }
250
+ }
137
251
  </style>
@@ -0,0 +1,3 @@
1
+ export function load() {
2
+ return { title: 'Docs', description: '' };
3
+ }
@@ -7,7 +7,6 @@
7
7
  </svelte:head>
8
8
 
9
9
  <section class="docs-overview">
10
- <h1 class="docs__title">Docs overview</h1>
11
10
  <p class="docs-overview__intro">
12
11
  Rizzo CSS is a design system built on semantic theming and 14 themes. One CSS codebase, 53 accessible BEM components — for <strong>Vanilla JS</strong>, <strong>Astro</strong>, <strong>Svelte</strong>, <strong>React</strong>, and <strong>Vue</strong>.
13
12
  </p>
@@ -0,0 +1,7 @@
1
+ export function load() {
2
+ return {
3
+ title: 'Docs overview',
4
+ description:
5
+ 'Rizzo CSS is a design system built on semantic theming and 14 themes. One CSS codebase, 53 accessible BEM components — for Vanilla JS, Astro, Svelte, React, and Vue.',
6
+ };
7
+ }
@@ -6,12 +6,7 @@
6
6
  const DOCS_BASE = 'https://rizzo-css.vercel.app';
7
7
  </script>
8
8
 
9
- <svelte:head>
10
- <title>Components — Rizzo CSS</title>
11
- </svelte:head>
12
-
13
9
  <section class="docs-components-intro">
14
- <h1 class="docs__title">Components</h1>
15
10
  <p class="docs-components-intro__tagline">
16
11
  Browse the collection of accessible, themeable components. Same CSS and BEM for Astro, Svelte, and Vanilla.
17
12
  </p>
@@ -0,0 +1,6 @@
1
+ export function load() {
2
+ return {
3
+ title: 'Components',
4
+ description: 'Browse all components by category',
5
+ };
6
+ }
@@ -1,11 +1,6 @@
1
1
  <script lang="ts">
2
2
  </script>
3
3
 
4
- <svelte:head>
5
- <title>Getting started — Rizzo CSS</title>
6
- </svelte:head>
7
-
8
- <h1 class="docs__title">Getting started</h1>
9
4
  <p>This project was created with the <strong>Full</strong> template. You have the home page, docs overview, components index, blocks, and themes.</p>
10
5
 
11
6
  <h2 id="installation">Installation</h2>
@@ -0,0 +1,6 @@
1
+ export function load() {
2
+ return {
3
+ title: 'Getting Started',
4
+ description: 'Installation, project structure, and quick start guide',
5
+ };
6
+ }
@@ -0,0 +1,6 @@
1
+ export function load() {
2
+ return {
3
+ title: 'Overview',
4
+ description: 'Introduction to Rizzo CSS and the design system',
5
+ };
6
+ }
@@ -154,13 +154,6 @@
154
154
  margin-right: auto;
155
155
  line-height: var(--line-height-relaxed);
156
156
  }
157
- .themes-page__subtitle code {
158
- background: var(--background-alt);
159
- color: var(--accent-fg);
160
- padding: var(--spacing-0-125) var(--spacing-0-375);
161
- border-radius: var(--radius);
162
- font-size: var(--font-size-sm);
163
- }
164
157
  .themes-page__hero-demo {
165
158
  margin-top: var(--spacing-6);
166
159
  text-align: left;
@@ -0,0 +1,18 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128">
2
+ <g>
3
+ <path d="M47.7 107.1c-5.5-5-7.2-15.7-4.9-23.4 4 4.9 9.6 6.4 15.4 7.3 8.9 1.3 17.6.8 25.9-3.2l2.8-1.7a18 18 0 0 1-7.2 20l-5.5 3.8c-5.6 3.8-7.2 8.2-5 14.7l.2.7a14 14 0 0 1-6.6-5.6 15.8 15.8 0 0 1-2.6-8.6c0-1.5 0-3-.2-4.5-.5-3.7-2.2-5.3-5.5-5.4-3.3-.1-5.9 2-6.6 5.2l-.2.7ZM16 82.4s16.5-8 33-8l12.4-38.3c.5-2 1.8-3.2 3.3-3.2 1.6 0 3 1.3 3.4 3.2l12.4 38.3c19.6 0 33 8 33 8l-28-76c-.8-2.3-2.2-3.7-4-3.7H48c-1.8 0-3.1 1.4-4 3.7l-28 76Z"/>
4
+ </g>
5
+ <path fill="url(#a)" d="M47.7 107.1c-5.5-5-7.2-15.7-4.9-23.4 4 4.9 9.6 6.4 15.4 7.3 8.9 1.3 17.6.8 25.9-3.2l2.8-1.7a18 18 0 0 1-7.2 20l-5.5 3.8c-5.6 3.8-7.2 8.2-5 14.7l.2.7a14 14 0 0 1-6.6-5.6 15.8 15.8 0 0 1-2.6-8.6c0-1.5 0-3-.2-4.5-.5-3.7-2.2-5.3-5.5-5.4-3.3-.1-5.9 2-6.6 5.2l-.2.7Z"/>
6
+ <defs>
7
+ <linearGradient id="a" x1="64.7" x2="77.4" y1="119.2" y2="77.4" gradientUnits="userSpaceOnUse">
8
+ <stop stop-color="#D83333"/>
9
+ <stop offset="1" stop-color="#F041FF"/>
10
+ </linearGradient>
11
+ </defs>
12
+ <style>
13
+ g { fill: #000; }
14
+ @media (prefers-color-scheme: dark) {
15
+ g { fill: #FFF; }
16
+ }
17
+ </style>
18
+ </svg>
@@ -28,7 +28,7 @@ If you prefer to load CSS from a CDN instead of the local file, replace the `<li
28
28
  - `<link rel="stylesheet" href="https://unpkg.com/rizzo-css@latest/dist/rizzo.min.css" />`
29
29
  - Or jsDelivr: `https://cdn.jsdelivr.net/npm/rizzo-css@latest/dist/rizzo.min.css`
30
30
 
31
- (Replace `@latest` with a specific version, e.g. `@0.0.85`, in production.)
31
+ (Replace `@latest` with a specific version, e.g. `@0.0.86`, in production.)
32
32
 
33
33
  The CLI replaces placeholders in `index.html` (e.g. `{{DATA_THEME}}`, `{{TITLE}}`) when you run `rizzo-css init`. The theme selected during init is used on first load when you have no saved preference in the browser.
34
34
 
@@ -4,6 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>{{TITLE}}</title>
7
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
7
8
  <!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
8
9
  <script>
9
10
  (function() {
@@ -526,6 +527,7 @@
526
527
 
527
528
 
528
529
 
530
+
529
531
 
530
532
 
531
533
  <main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
@@ -890,6 +892,25 @@
890
892
 
891
893
 
892
894
 
895
+
896
+ <footer class="footer" role="contentinfo">
897
+ <div class="footer__container">
898
+ <div class="footer__inner">
899
+ <p class="footer__copyright">
900
+ <span class="footer__site-name">Rizzo CSS</span> · <span class="footer__year">© 2026</span>
901
+ </p>
902
+ <nav class="footer__nav" aria-label="Footer">
903
+ <ul class="footer__links">
904
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/getting-started">Getting Started</a></li>
905
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/components">Components</a></li>
906
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/blocks">Blocks</a></li>
907
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/theming">Theming</a></li>
908
+ <li class="footer__link-item"><a class="footer__link" href="https://github.com">GitHub</a></li>
909
+ </ul>
910
+ </nav>
911
+ </div>
912
+ </div>
913
+ </footer>
893
914
  <div class="back-to-top" data-back-to-top data-threshold="400" aria-hidden="true">
894
915
  <button type="button" class="back-to-top__btn" aria-label="Back to top" data-back-to-top-btn>
895
916
  <span class="back-to-top__icon" aria-hidden="true">
@@ -4,6 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>{{TITLE}}</title>
7
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
7
8
  <!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
8
9
  <script>
9
10
  (function() {
@@ -526,6 +527,7 @@
526
527
 
527
528
 
528
529
 
530
+
529
531
 
530
532
 
531
533
  <main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
@@ -890,6 +892,25 @@
890
892
 
891
893
 
892
894
 
895
+
896
+ <footer class="footer" role="contentinfo">
897
+ <div class="footer__container">
898
+ <div class="footer__inner">
899
+ <p class="footer__copyright">
900
+ <span class="footer__site-name">Rizzo CSS</span> · <span class="footer__year">© 2026</span>
901
+ </p>
902
+ <nav class="footer__nav" aria-label="Footer">
903
+ <ul class="footer__links">
904
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/getting-started">Getting Started</a></li>
905
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/components">Components</a></li>
906
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/blocks">Blocks</a></li>
907
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/theming">Theming</a></li>
908
+ <li class="footer__link-item"><a class="footer__link" href="https://github.com">GitHub</a></li>
909
+ </ul>
910
+ </nav>
911
+ </div>
912
+ </div>
913
+ </footer>
893
914
  <div class="back-to-top" data-back-to-top data-threshold="400" aria-hidden="true">
894
915
  <button type="button" class="back-to-top__btn" aria-label="Back to top" data-back-to-top-btn>
895
916
  <span class="back-to-top__icon" aria-hidden="true">
@@ -4,6 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>{{TITLE}}</title>
7
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
7
8
  <!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
8
9
  <script>
9
10
  (function() {
@@ -526,6 +527,7 @@
526
527
 
527
528
 
528
529
 
530
+
529
531
 
530
532
 
531
533
  <main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
@@ -890,6 +892,25 @@
890
892
 
891
893
 
892
894
 
895
+
896
+ <footer class="footer" role="contentinfo">
897
+ <div class="footer__container">
898
+ <div class="footer__inner">
899
+ <p class="footer__copyright">
900
+ <span class="footer__site-name">Rizzo CSS</span> · <span class="footer__year">© 2026</span>
901
+ </p>
902
+ <nav class="footer__nav" aria-label="Footer">
903
+ <ul class="footer__links">
904
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/getting-started">Getting Started</a></li>
905
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/components">Components</a></li>
906
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/blocks">Blocks</a></li>
907
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/theming">Theming</a></li>
908
+ <li class="footer__link-item"><a class="footer__link" href="https://github.com">GitHub</a></li>
909
+ </ul>
910
+ </nav>
911
+ </div>
912
+ </div>
913
+ </footer>
893
914
  <div class="back-to-top" data-back-to-top data-threshold="400" aria-hidden="true">
894
915
  <button type="button" class="back-to-top__btn" aria-label="Back to top" data-back-to-top-btn>
895
916
  <span class="back-to-top__icon" aria-hidden="true">
@@ -4,6 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>{{TITLE}}</title>
7
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
7
8
  <!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
8
9
  <script>
9
10
  (function() {
@@ -526,6 +527,7 @@
526
527
 
527
528
 
528
529
 
530
+
529
531
 
530
532
 
531
533
  <main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
@@ -890,6 +892,25 @@
890
892
 
891
893
 
892
894
 
895
+
896
+ <footer class="footer" role="contentinfo">
897
+ <div class="footer__container">
898
+ <div class="footer__inner">
899
+ <p class="footer__copyright">
900
+ <span class="footer__site-name">Rizzo CSS</span> · <span class="footer__year">© 2026</span>
901
+ </p>
902
+ <nav class="footer__nav" aria-label="Footer">
903
+ <ul class="footer__links">
904
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/getting-started">Getting Started</a></li>
905
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/components">Components</a></li>
906
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/blocks">Blocks</a></li>
907
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/theming">Theming</a></li>
908
+ <li class="footer__link-item"><a class="footer__link" href="https://github.com">GitHub</a></li>
909
+ </ul>
910
+ </nav>
911
+ </div>
912
+ </div>
913
+ </footer>
893
914
  <div class="back-to-top" data-back-to-top data-threshold="400" aria-hidden="true">
894
915
  <button type="button" class="back-to-top__btn" aria-label="Back to top" data-back-to-top-btn>
895
916
  <span class="back-to-top__icon" aria-hidden="true">
@@ -4,6 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>{{TITLE}}</title>
7
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
7
8
  <!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
8
9
  <script>
9
10
  (function() {
@@ -526,6 +527,7 @@
526
527
 
527
528
 
528
529
 
530
+
529
531
 
530
532
 
531
533
  <main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
@@ -890,6 +892,25 @@
890
892
 
891
893
 
892
894
 
895
+
896
+ <footer class="footer" role="contentinfo">
897
+ <div class="footer__container">
898
+ <div class="footer__inner">
899
+ <p class="footer__copyright">
900
+ <span class="footer__site-name">Rizzo CSS</span> · <span class="footer__year">© 2026</span>
901
+ </p>
902
+ <nav class="footer__nav" aria-label="Footer">
903
+ <ul class="footer__links">
904
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/getting-started">Getting Started</a></li>
905
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/components">Components</a></li>
906
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/blocks">Blocks</a></li>
907
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/theming">Theming</a></li>
908
+ <li class="footer__link-item"><a class="footer__link" href="https://github.com">GitHub</a></li>
909
+ </ul>
910
+ </nav>
911
+ </div>
912
+ </div>
913
+ </footer>
893
914
  <div class="back-to-top" data-back-to-top data-threshold="400" aria-hidden="true">
894
915
  <button type="button" class="back-to-top__btn" aria-label="Back to top" data-back-to-top-btn>
895
916
  <span class="back-to-top__icon" aria-hidden="true">
@@ -4,6 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>{{TITLE}}</title>
7
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
7
8
  <!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
8
9
  <script>
9
10
  (function() {
@@ -526,6 +527,7 @@
526
527
 
527
528
 
528
529
 
530
+
529
531
 
530
532
 
531
533
  <main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
@@ -890,6 +892,25 @@
890
892
 
891
893
 
892
894
 
895
+
896
+ <footer class="footer" role="contentinfo">
897
+ <div class="footer__container">
898
+ <div class="footer__inner">
899
+ <p class="footer__copyright">
900
+ <span class="footer__site-name">Rizzo CSS</span> · <span class="footer__year">© 2026</span>
901
+ </p>
902
+ <nav class="footer__nav" aria-label="Footer">
903
+ <ul class="footer__links">
904
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/getting-started">Getting Started</a></li>
905
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/components">Components</a></li>
906
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/blocks">Blocks</a></li>
907
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/theming">Theming</a></li>
908
+ <li class="footer__link-item"><a class="footer__link" href="https://github.com">GitHub</a></li>
909
+ </ul>
910
+ </nav>
911
+ </div>
912
+ </div>
913
+ </footer>
893
914
  <div class="back-to-top" data-back-to-top data-threshold="400" aria-hidden="true">
894
915
  <button type="button" class="back-to-top__btn" aria-label="Back to top" data-back-to-top-btn>
895
916
  <span class="back-to-top__icon" aria-hidden="true">
@@ -4,6 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>{{TITLE}}</title>
7
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
7
8
  <!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
8
9
  <script>
9
10
  (function() {
@@ -526,6 +527,7 @@
526
527
 
527
528
 
528
529
 
530
+
529
531
 
530
532
 
531
533
  <main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
@@ -890,6 +892,25 @@
890
892
 
891
893
 
892
894
 
895
+
896
+ <footer class="footer" role="contentinfo">
897
+ <div class="footer__container">
898
+ <div class="footer__inner">
899
+ <p class="footer__copyright">
900
+ <span class="footer__site-name">Rizzo CSS</span> · <span class="footer__year">© 2026</span>
901
+ </p>
902
+ <nav class="footer__nav" aria-label="Footer">
903
+ <ul class="footer__links">
904
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/getting-started">Getting Started</a></li>
905
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/components">Components</a></li>
906
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/blocks">Blocks</a></li>
907
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/theming">Theming</a></li>
908
+ <li class="footer__link-item"><a class="footer__link" href="https://github.com">GitHub</a></li>
909
+ </ul>
910
+ </nav>
911
+ </div>
912
+ </div>
913
+ </footer>
893
914
  <div class="back-to-top" data-back-to-top data-threshold="400" aria-hidden="true">
894
915
  <button type="button" class="back-to-top__btn" aria-label="Back to top" data-back-to-top-btn>
895
916
  <span class="back-to-top__icon" aria-hidden="true">
@@ -4,6 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>{{TITLE}}</title>
7
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
7
8
  <!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
8
9
  <script>
9
10
  (function() {
@@ -526,6 +527,7 @@
526
527
 
527
528
 
528
529
 
530
+
529
531
 
530
532
 
531
533
  <main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
@@ -890,6 +892,25 @@
890
892
 
891
893
 
892
894
 
895
+
896
+ <footer class="footer" role="contentinfo">
897
+ <div class="footer__container">
898
+ <div class="footer__inner">
899
+ <p class="footer__copyright">
900
+ <span class="footer__site-name">Rizzo CSS</span> · <span class="footer__year">© 2026</span>
901
+ </p>
902
+ <nav class="footer__nav" aria-label="Footer">
903
+ <ul class="footer__links">
904
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/getting-started">Getting Started</a></li>
905
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/components">Components</a></li>
906
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/blocks">Blocks</a></li>
907
+ <li class="footer__link-item"><a class="footer__link" href="https://rizzo-css.vercel.app/docs/theming">Theming</a></li>
908
+ <li class="footer__link-item"><a class="footer__link" href="https://github.com">GitHub</a></li>
909
+ </ul>
910
+ </nav>
911
+ </div>
912
+ </div>
913
+ </footer>
893
914
  <div class="back-to-top" data-back-to-top data-threshold="400" aria-hidden="true">
894
915
  <button type="button" class="back-to-top__btn" aria-label="Back to top" data-back-to-top-btn>
895
916
  <span class="back-to-top__icon" aria-hidden="true">