maverick-wave 4.3.0 → 4.4.1

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 (71) hide show
  1. package/.claude/skills/maverick-wave/SKILL.md +5 -3
  2. package/.claude/skills/maverick-wave/examples/angular-form.md +4 -0
  3. package/.claude/skills/maverick-wave/examples/static-landing-page.md +1 -1
  4. package/.claude/skills/maverick-wave/references/forms.md +27 -0
  5. package/.claude/skills/maverick-wave/references/theming.md +91 -67
  6. package/CHANGELOG.md +16 -0
  7. package/CLAUDE.md +10 -10
  8. package/README.md +109 -31
  9. package/maverick-wave.min.css +2 -2
  10. package/package.json +2 -2
  11. package/scripts/verify.js +13 -7
  12. package/src/assets/header-logo.svg +4 -4
  13. package/src/js/main.js +3 -3
  14. package/src/partials/accordions-container.html +9 -9
  15. package/src/partials/blog-posts-container.html +1 -1
  16. package/src/partials/buttons-container.html +1 -1
  17. package/src/partials/colors-container.html +75 -3
  18. package/src/partials/footer-container.html +3 -3
  19. package/src/partials/form-elements-container.html +98 -0
  20. package/src/partials/form-field-container.html +20 -4
  21. package/src/partials/get-started-container.html +36 -33
  22. package/src/partials/header-utilities-container.html +1 -1
  23. package/src/partials/modals-container.html +1 -1
  24. package/src/partials/ratings-container.html +1 -1
  25. package/src/partials/segmented-container.html +2 -2
  26. package/src/partials/tables-container.html +4 -4
  27. package/src/partials/tabs-container.html +7 -6
  28. package/src/partials/tags-container.html +1 -1
  29. package/src/partials/timelines-container.html +5 -5
  30. package/src/partials/utilities-container.html +1 -1
  31. package/src/scss/abstracts/_variables.scss +158 -46
  32. package/src/scss/base/_base.scss +1 -1
  33. package/src/scss/base/_typography.scss +2 -2
  34. package/src/scss/components/_alerts.scss +2 -2
  35. package/src/scss/components/_avatars.scss +2 -2
  36. package/src/scss/components/_blog-post.scss +5 -5
  37. package/src/scss/components/_breadcrumbs.scss +3 -3
  38. package/src/scss/components/_button-bar.scss +4 -4
  39. package/src/scss/components/_buttons.scss +6 -6
  40. package/src/scss/components/_calendar.scss +10 -10
  41. package/src/scss/components/_cards.scss +2 -2
  42. package/src/scss/components/_divider.scss +3 -3
  43. package/src/scss/components/_empty-state.scss +4 -4
  44. package/src/scss/components/_gallery.scss +1 -1
  45. package/src/scss/components/_info.scss +3 -3
  46. package/src/scss/components/_kanban.scss +12 -12
  47. package/src/scss/components/_lists.scss +12 -12
  48. package/src/scss/components/_localhost-indicator.scss +2 -2
  49. package/src/scss/components/_meta-info.scss +1 -1
  50. package/src/scss/components/_ratings.scss +1 -1
  51. package/src/scss/components/_segmented.scss +3 -3
  52. package/src/scss/components/_spinners.scss +10 -10
  53. package/src/scss/components/_stepper.scss +4 -4
  54. package/src/scss/components/_tabs.scss +5 -5
  55. package/src/scss/components/_techstack-bucket.scss +2 -2
  56. package/src/scss/components/_timelines.scss +10 -10
  57. package/src/scss/form-elements/_checkbox.scss +1 -1
  58. package/src/scss/form-elements/_form.scss +4 -4
  59. package/src/scss/form-elements/_index.scss +1 -0
  60. package/src/scss/form-elements/_input-group.scss +1 -1
  61. package/src/scss/form-elements/_input.scss +3 -3
  62. package/src/scss/form-elements/_login.scss +2 -2
  63. package/src/scss/form-elements/_prefilled.scss +65 -0
  64. package/src/scss/form-elements/_select.scss +2 -2
  65. package/src/scss/form-elements/_slider.scss +1 -1
  66. package/src/scss/form-elements/_textarea.scss +2 -2
  67. package/src/scss/layout/_footer.scss +3 -3
  68. package/src/scss/layout/_header.scss +5 -5
  69. package/src/scss/layout/_section.scss +5 -5
  70. package/src/scss/utilities/_flex.scss +1 -1
  71. package/src/scss/utilities/_text.scss +6 -6
@@ -3,9 +3,11 @@
3
3
  <!-- the hex code string is getting updated via javascript! -->
4
4
 
5
5
  <p class="mw-text-muted mw-mb-6">
6
- These twelve are the only colors you ever set. Everything else &mdash; hover
7
- tones, translucent backgrounds, borders, muted text &mdash; is derived from
8
- them at runtime with <code>color-mix()</code>, so overriding a root token
6
+ These thirteen are the only colors you ever set. Everything else - hover
7
+ tones, translucent backgrounds, borders, muted text, the card and footer
8
+ surfaces, the ink variant the dark theme needs - is derived from them at
9
+ runtime with
10
+ <code>color-mix()</code> and relative color syntax, so overriding a root token
9
11
  cascades to all of its variants.
10
12
  </p>
11
13
 
@@ -135,4 +137,74 @@
135
137
  <p class="mw-text-muted">#000000</p>
136
138
  </div>
137
139
  </div>
140
+
141
+ <div class="mw-card mw-card-simple color-card">
142
+ <div class="mw-text-center">
143
+ <div
144
+ class="color-swatch"
145
+ style="background: var(--mw-form-elements-background)"
146
+ ></div>
147
+ <p>Form Elements</p>
148
+ <p class="mw-text-muted">#000000</p>
149
+ </div>
150
+ </div>
138
151
  </div>
152
+
153
+ <h3 class="mw-section-subtitle">Fill or Ink</h3>
154
+
155
+ <p class="mw-text-muted mw-mb-6">
156
+ Every brand and status colour comes in two tokens.
157
+ <code>--mw-primary-color</code> is the exact colour, for anything it
158
+ <strong>fills</strong> - buttons, badges, bars - with
159
+ <code>--mw-accent-text-color</code> on top.
160
+ <code>--mw-primary-text-color</code> is the same colour as ink
161
+ <strong>on</strong> a theme surface: text, icons, focus rings, accent borders.
162
+ A colour picked to carry a label is by definition too dark or too light to be
163
+ read on the page it sits on. The ink token clamps OKLch lightness - at least
164
+ 0.68 on the dark page, at most 0.55 on the light one - and keeps hue and
165
+ chroma, so it works for any palette: a dark colour gets lifted, a very light
166
+ one deepened, and a colour already in range passes through untouched. Toggle
167
+ the theme and watch the second row.
168
+ </p>
169
+
170
+ <div class="mw-grid-auto-sm mw-mb-6">
171
+ <div class="mw-card mw-card-simple">
172
+ <p class="mw-mb-3"><strong>Fill</strong> - <code>--mw-*-color</code></p>
173
+ <div class="mw-tags">
174
+ <span class="mw-tag mw-tag-primary">Primary</span>
175
+ <span class="mw-tag mw-tag-secondary">Secondary</span>
176
+ </div>
177
+ <p class="mw-mt-4">
178
+ <button class="mw-btn mw-btn-primary">Primary</button>
179
+ <button class="mw-btn mw-btn-secondary">Secondary</button>
180
+ </p>
181
+ </div>
182
+
183
+ <div class="mw-card mw-card-simple">
184
+ <p class="mw-mb-3"><strong>Ink</strong> - <code>--mw-*-text-color</code></p>
185
+ <p class="mw-text-primary">Primary text, links and icons</p>
186
+ <p class="mw-text-secondary">Secondary accent</p>
187
+ <p class="mw-text-success">Success</p>
188
+ <p class="mw-text-warning">Warning</p>
189
+ <p class="mw-text-danger">Danger</p>
190
+ <p class="mw-text-info">Info</p>
191
+ </div>
192
+ </div>
193
+
194
+ <p class="mw-text-muted">
195
+ Tinted surfaces follow one rule as well:
196
+ <code>--mw-*-background</code> is 20% of the colour,
197
+ <code>--mw-*-background-hover</code> 45%. Both stay close enough to the
198
+ surface underneath that <code>--mw-text-color</code> keeps working on top -
199
+ which is what makes an alert, badge or tag readable in either theme.
200
+ </p>
201
+
202
+ <p class="mw-text-muted">
203
+ The surfaces work the same way. Card, footer and border scale the page
204
+ background's OKLch lightness and chroma by one factor and keep the hue, so a
205
+ tinted page hands its tint down instead of graying out. A card always steps
206
+ <strong>away from the text colour</strong> - darker than the page in the dark
207
+ theme, lighter in the light one - so content sits on the cleaner surface. That
208
+ is also why the dark page background is not near-black: the surfaces below it
209
+ need somewhere to go.
210
+ </p>
@@ -91,9 +91,9 @@
91
91
  MaverickWave is a lightweight, modern CSS framework for building responsive
92
92
  websites with elegance and speed. It embodies the spirit of innovation and
93
93
  fluidity, just like a maverick wave that charts its own course across the
94
- ocean. The framework was named to reflect its bold approach to web
95
- design—breaking free from conventional constraints while maintaining a natural
96
- flow that adapts seamlessly to any environment. Like the powerful yet graceful
94
+ ocean. The framework was named to reflect its bold approach to web design -
95
+ breaking free from conventional constraints while maintaining a natural flow
96
+ that adapts seamlessly to any environment. Like the powerful yet graceful
97
97
  movement of waves, MaverickWave combines strength and flexibility, empowering
98
98
  developers to create distinctive digital experiences that stand out in the
99
99
  vast sea of the web.
@@ -433,6 +433,104 @@
433
433
  </div>
434
434
  </div>
435
435
 
436
+ <div class="mw-card mw-card-simple">
437
+ <h3 class="mw-card-title">Prefilled Values</h3>
438
+ <p class="mw-text-muted mw-text-sm mw-mt-3">
439
+ Add <code>mw-prefilled</code> to any control whose value was not typed in
440
+ this session - loaded from an existing record, restored from a draft,
441
+ filled with a default. The corner triangle scales with the control size
442
+ and stays visible on readonly and disabled controls. It is decoration
443
+ only, so repeat the information in a <code>mw-field-hint</code> for screen
444
+ readers.
445
+ </p>
446
+ <div class="mw-grid-4 mw-mt-4">
447
+ <!-- Small -->
448
+ <label for="prefilled-input-sm">
449
+ <span>Small</span>
450
+ <input
451
+ id="prefilled-input-sm"
452
+ type="text"
453
+ class="mw-input mw-input-sm mw-prefilled"
454
+ value="Max Mustermann"
455
+ />
456
+ </label>
457
+ <!-- Default -->
458
+ <label for="prefilled-input">
459
+ <span>Default</span>
460
+ <input
461
+ id="prefilled-input"
462
+ type="text"
463
+ class="mw-input mw-prefilled"
464
+ value="Max Mustermann"
465
+ />
466
+ </label>
467
+ <!-- Large -->
468
+ <label for="prefilled-input-lg">
469
+ <span>Large</span>
470
+ <input
471
+ id="prefilled-input-lg"
472
+ type="text"
473
+ class="mw-input mw-input-lg mw-prefilled"
474
+ value="Max Mustermann"
475
+ />
476
+ </label>
477
+ <!-- Readonly -->
478
+ <label for="prefilled-input-readonly">
479
+ <span>Readonly</span>
480
+ <input
481
+ id="prefilled-input-readonly"
482
+ type="text"
483
+ class="mw-input mw-prefilled"
484
+ readonly
485
+ value="USR-00042"
486
+ />
487
+ </label>
488
+ </div>
489
+ <div class="mw-grid-4 mw-mt-4">
490
+ <!-- Select small -->
491
+ <label for="prefilled-select-sm">
492
+ <span>Select small</span>
493
+ <select
494
+ id="prefilled-select-sm"
495
+ class="mw-select mw-select-sm mw-prefilled"
496
+ >
497
+ <option selected>Germany</option>
498
+ <option>Austria</option>
499
+ </select>
500
+ </label>
501
+ <!-- Select default -->
502
+ <label for="prefilled-select">
503
+ <span>Select default</span>
504
+ <select id="prefilled-select" class="mw-select mw-prefilled">
505
+ <option selected>Germany</option>
506
+ <option>Austria</option>
507
+ </select>
508
+ </label>
509
+ <!-- Select large -->
510
+ <label for="prefilled-select-lg">
511
+ <span>Select large</span>
512
+ <select
513
+ id="prefilled-select-lg"
514
+ class="mw-select mw-select-lg mw-prefilled"
515
+ >
516
+ <option selected>Germany</option>
517
+ <option>Austria</option>
518
+ </select>
519
+ </label>
520
+ <!-- Textarea -->
521
+ <label for="prefilled-textarea">
522
+ <span>Textarea</span>
523
+ <textarea
524
+ id="prefilled-textarea"
525
+ class="mw-textarea mw-prefilled"
526
+ rows="3"
527
+ >
528
+ Imported from the previous application.</textarea
529
+ >
530
+ </label>
531
+ </div>
532
+ </div>
533
+
436
534
  <div class="mw-card mw-card-simple">
437
535
  <h3 class="mw-card-title">Toggle Switch</h3>
438
536
  <div class="mw-grid-4-lg mw-mt-4">
@@ -7,7 +7,7 @@
7
7
  <div class="mw-card mw-card-simple">
8
8
  <p class="mw-text-muted mw-text-sm mw-mb-4">
9
9
  The <code>mw-field</code> wrapper groups label, input, hint, and error
10
- message as a single unit the recommended pattern for Angular reactive
10
+ message as a single unit - the recommended pattern for Angular reactive
11
11
  forms.
12
12
  </p>
13
13
 
@@ -80,9 +80,9 @@
80
80
  The error look is not automatic: bind
81
81
  <code>mw-field-has-error</code> to the control state (in Angular
82
82
  <code>[class.mw-field-has-error]="c.invalid &amp;&amp; c.touched"</code
83
- >). A control without a field wrapper &mdash; also a
83
+ >). A control without a field wrapper - also a
84
84
  <code>mw-checkbox-group</code>, <code>mw-radio-group</code> or
85
- <code>mw-slider-container</code> &mdash; takes
85
+ <code>mw-slider-container</code> - takes
86
86
  <code>mw-form-element-error</code> instead.
87
87
  </p>
88
88
 
@@ -133,13 +133,29 @@
133
133
  </div>
134
134
 
135
135
  <!-- Disabled -->
136
- <div class="mw-field">
136
+ <div class="mw-field mw-mb-4">
137
137
  <label class="mw-field-label" for="ff-plan">Plan (disabled)</label>
138
138
  <select id="ff-plan" class="mw-select" disabled>
139
139
  <option>Enterprise</option>
140
140
  </select>
141
141
  <span class="mw-field-hint">Contact support to change your plan.</span>
142
142
  </div>
143
+
144
+ <!-- Prefilled -->
145
+ <div class="mw-field">
146
+ <label class="mw-field-label" for="ff-company">Company</label>
147
+ <input
148
+ id="ff-company"
149
+ type="text"
150
+ class="mw-input mw-prefilled"
151
+ value="ACME GmbH"
152
+ aria-describedby="ff-company-hint"
153
+ />
154
+ <span class="mw-field-hint" id="ff-company-hint"
155
+ >Prefilled from your account - marked with
156
+ <code>mw-prefilled</code>.</span
157
+ >
158
+ </div>
143
159
  </div>
144
160
  </div>
145
161
  </div>
@@ -69,16 +69,18 @@
69
69
  <pre class="mw-code-block"><code>/* your-custom-styles.css */
70
70
  :root {
71
71
  /* Brand colors */
72
- --mw-primary-color: #e94560;
73
- --mw-secondary-color: #f39c12;
72
+ --mw-primary-color: #0f766e;
73
+ --mw-secondary-color: #b45309;
74
74
 
75
- /* Dark theme overrides */
76
- --mw-dark-page-background: #1a1a2e;
77
- --mw-dark-card-background: #2a2a4a;
75
+ /* Text on every solid colored surface. The one token that cannot be
76
+ derived: a light brand color needs a dark label, a dark one a light
77
+ label - set it opposite your primary. */
78
+ --mw-accent-text-color: #f2fafa;
78
79
 
79
- /* Light theme overrides */
80
- --mw-light-page-background: #ffffff;
81
- --mw-light-card-background: #f0f0f5;
80
+ /* Page backgrounds. Card, footer and border are derived from them, so
81
+ these two are usually all you set. */
82
+ --mw-dark-page-background: #172127;
83
+ --mw-light-page-background: #f2f6f7;
82
84
 
83
85
  /* Font */
84
86
  --mw-font-family-base: 'Your Custom Font', sans-serif;
@@ -98,7 +100,7 @@
98
100
  <p>
99
101
  MaverickWave uses <code>@use</code> / <code>@forward</code> (modern
100
102
  Sass module syntax). Pass your overrides through
101
- <code>@use ... with (...)</code> &mdash; a plain assignment before the
103
+ <code>@use ... with (...)</code> - a plain assignment before the
102
104
  <code>@use</code> has no effect, because the root colors are declared
103
105
  with <code>!default</code>.
104
106
  </p>
@@ -107,11 +109,11 @@
107
109
  <p>Set <code>$mw-theme-mode</code> to control theme behavior:</p>
108
110
  <ul>
109
111
  <li>
110
- <code>'switchable'</code> (default) dark base, toggleable to light
112
+ <code>'switchable'</code> (default) - dark base, toggleable to light
111
113
  via <code>.mw-theme-light</code> on <code>&lt;body&gt;</code>
112
114
  </li>
113
- <li><code>'dark'</code> compile dark theme only</li>
114
- <li><code>'light'</code> compile light theme only</li>
115
+ <li><code>'dark'</code> - compile dark theme only</li>
116
+ <li><code>'light'</code> - compile light theme only</li>
115
117
  </ul>
116
118
  <p class="mw-text-warning">
117
119
  <i class="fas fa-exclamation-triangle mw-mr-1"></i>
@@ -119,20 +121,21 @@
119
121
  dark appearance regardless of theme mode.
120
122
  </p>
121
123
 
122
- <h5 class="mw-mt-4">Example your main SCSS file</h5>
124
+ <h5 class="mw-mt-4">Example - your main SCSS file</h5>
123
125
  <pre class="mw-code-block"><code>// styles.scss
124
126
 
125
127
  @use 'path/to/maverick-wave/src/scss/main' with (
126
128
  // Theme mode (optional, default is 'switchable')
127
129
  $mw-theme-mode: 'switchable',
128
130
 
129
- // Root colors everything else is derived from them at runtime
130
- $primary-color: #e94560,
131
- $secondary-color: #f39c12,
132
- $dark-background: #1f1f2e,
133
- $light-background: #f8f9fa,
134
- $dark-text-color: #ffffff,
135
- $light-text-color: #1c1c1c
131
+ // Root colors - everything else is derived from them at runtime
132
+ $primary-color: #0f766e,
133
+ $secondary-color: #b45309,
134
+ $accent-text-color: #f2fafa,
135
+ $dark-background: #172127,
136
+ $light-background: #f2f6f7,
137
+ $dark-text-color: #e8eef0,
138
+ $light-text-color: #172127
136
139
  );
137
140
 
138
141
  // Your additional styles
@@ -152,12 +155,12 @@ body {
152
155
  </p>
153
156
  <pre
154
157
  class="mw-code-block"
155
- ><code>// styles.scss the configuration has to come first
158
+ ><code>// styles.scss - the configuration has to come first
156
159
  @use 'maverick-wave/src/scss/abstracts/variables' with (
157
160
  $primary-color: #0f766e
158
161
  );
159
162
 
160
- @use 'maverick-wave/src/scss/base'; // required carries the :root tokens
163
+ @use 'maverick-wave/src/scss/base'; // required - carries the :root tokens
161
164
  @use 'maverick-wave/src/scss/layout/grid';
162
165
  @use 'maverick-wave/src/scss/layout/page-header';
163
166
  @use 'maverick-wave/src/scss/components/buttons';
@@ -169,7 +172,7 @@ body {
169
172
  @use 'maverick-wave/src/scss/utilities';</code></pre>
170
173
  <p class="mw-text-warning">
171
174
  <i class="fas fa-exclamation-triangle mw-mr-1"></i>
172
- Without <code>base</code> every component renders without colors it
175
+ Without <code>base</code> every component renders without colors - it
173
176
  carries the <code>:root</code> custom properties. A subset like the
174
177
  one above compiles to roughly 98 kB raw / 15 kB gzipped, against 147
175
178
  kB / 22.5 kB for the full build.
@@ -195,9 +198,9 @@ body {
195
198
  <i class="fas fa-exclamation-triangle mw-mr-1"></i>
196
199
  <strong>No <code>"scripts"</code> entry for the JS file.</strong>
197
200
  <code>maverick-wave.min.js</code> wires everything up once on
198
- <code>DOMContentLoaded</code> and writes straight into the DOM &mdash;
199
- in a SPA everything rendered afterwards stays uninitialized, and the
200
- class toggles happen behind change detection. Rebuild the behaviors in
201
+ <code>DOMContentLoaded</code> and writes straight into the DOM - in a
202
+ SPA everything rendered afterwards stays uninitialized, and the class
203
+ toggles happen behind change detection. Rebuild the behaviors in
201
204
  components; the state classes (<code>active</code>, <code>open</code>,
202
205
  <code>mw-modal-open</code>, <code>mw-selected</code>) are the whole
203
206
  contract.
@@ -235,8 +238,8 @@ constructor() {
235
238
  <h5 class="mw-mt-4">Reactive Forms</h5>
236
239
  <p>
237
240
  The <code>mw-field</code> wrapper groups label, control, hint and
238
- error. Bind the error state yourself &mdash; the framework does not
239
- style Angular's <code>ng-invalid</code> / <code>ng-touched</code>
241
+ error. Bind the error state yourself - the framework does not style
242
+ Angular's <code>ng-invalid</code> / <code>ng-touched</code>
240
243
  classes:
241
244
  </p>
242
245
  <pre
@@ -263,10 +266,10 @@ constructor() {
263
266
  import './assets/maverick-wave.min.css';</code></pre>
264
267
  <p class="mw-text-warning">
265
268
  <i class="fas fa-exclamation-triangle mw-mr-1"></i>
266
- Do not import <code>maverick-wave.min.js</code> in a SPA &mdash; it
267
- binds once on <code>DOMContentLoaded</code> and never sees anything
268
- rendered later. Accordion, tabs, modal and theme toggle are class
269
- toggles; bind them with <code>className</code> from state.
269
+ Do not import <code>maverick-wave.min.js</code> in a SPA - it binds
270
+ once on <code>DOMContentLoaded</code> and never sees anything rendered
271
+ later. Accordion, tabs, modal and theme toggle are class toggles; bind
272
+ them with <code>className</code> from state.
270
273
  </p>
271
274
  <p>Example usage in a React component:</p>
272
275
  <pre class="mw-code-block"><code>function App() {
@@ -321,7 +324,7 @@ import './assets/maverick-wave.min.css';</code></pre>
321
324
  </p>
322
325
  <pre
323
326
  class="mw-code-block"
324
- ><code>/* your-custom-styles.css load AFTER maverick-wave.min.css */
327
+ ><code>/* your-custom-styles.css - load AFTER maverick-wave.min.css */
325
328
  :root {
326
329
  --mw-font-family-base: 'Your Custom Font', system-ui, sans-serif;
327
330
  --mw-font-family-heading: 'Your Custom Font', system-ui, sans-serif;
@@ -85,7 +85,7 @@
85
85
  Shows who is signed in: an avatar with initials plus the name. Below
86
86
  <code>md</code> the name steps aside and only the round avatar remains, so
87
87
  it keeps the same height as the login and burger buttons. Works outside a
88
- header too &mdash; in a panel header or a toolbar.
88
+ header too - in a panel header or a toolbar.
89
89
  </p>
90
90
  <!-- Fake header -->
91
91
  <div class="mw-mb-4" style="position: relative; overflow: hidden">
@@ -67,7 +67,7 @@
67
67
  </div>
68
68
  <div class="mw-modal-body">
69
69
  <p class="mw-text-muted">
70
- Max-width <strong>520px</strong>. The default size fits most use
70
+ Max-width <strong>520px</strong>. The default size - fits most use
71
71
  cases.
72
72
  </p>
73
73
  </div>
@@ -1,6 +1,6 @@
1
1
  <h3 class="mw-section-subtitle">Ratings</h3>
2
2
  <p class="mw-text-muted">
3
- Change the <code>data-rating</code> attribute (05) to see how many thumbs-up
3
+ Change the <code>data-rating</code> attribute (0-5) to see how many thumbs-up
4
4
  light up. You can also determine the icon flexibly.
5
5
  </p>
6
6
 
@@ -44,7 +44,7 @@
44
44
  </div>
45
45
 
46
46
  <label class="mw-field-label mw-d-block mw-mb-2">
47
- Secondary tone &ndash; <code>mw-segmented-secondary</code>
47
+ Secondary tone - <code>mw-segmented-secondary</code>
48
48
  </label>
49
49
  <div class="mw-segmented mw-segmented-secondary mw-mb-6">
50
50
  <button type="button" class="mw-segmented-item mw-active">List</button>
@@ -52,7 +52,7 @@
52
52
  </div>
53
53
 
54
54
  <label class="mw-field-label mw-d-block mw-mb-2">
55
- Inline &ndash; <code>mw-segmented-auto</code>
55
+ Inline - <code>mw-segmented-auto</code>
56
56
  </label>
57
57
  <div class="mw-segmented mw-segmented-auto">
58
58
  <button type="button" class="mw-segmented-item mw-active">All</button>
@@ -44,9 +44,9 @@
44
44
  </table>
45
45
  <p class="mw-text-muted mw-mt-3">
46
46
  The <strong>Budget</strong> column uses
47
- <strong>mw-text-currency</strong> &ndash; right-aligned with tabular,
48
- lining digits and no wrapping mid-number. The alignment comes from the
49
- right edge, so it works the same for <code>1,204.50</code> and
47
+ <strong>mw-text-currency</strong> - right-aligned with tabular, lining
48
+ digits and no wrapping mid-number. The alignment comes from the right
49
+ edge, so it works the same for <code>1,204.50</code> and
50
50
  <code>1.204,50</code>; only the number of decimal places has to be
51
51
  consistent per column. If you only want the fixed-width digits without the
52
52
  alignment, use <strong>mw-text-numeric</strong>. For the input side there
@@ -102,7 +102,7 @@
102
102
  <code>mw-table-responsive-scroll</code> provides. Scroll inside the table
103
103
  to see it. Its height comes from
104
104
  <code>--mw-table-scroll-height</code> (400px, 260px below <code>sm</code>)
105
- &mdash; override it per table with
105
+ - override it per table with
106
106
  <code>style="--mw-table-scroll-height: 250px"</code>.
107
107
  </p>
108
108
 
@@ -168,8 +168,8 @@ href="path/maverick-wave.min.css"&gt;</code></pre>
168
168
  </p>
169
169
  <pre class="mw-code-block"><code>/* your-custom-styles.css */
170
170
  :root {
171
- --mw-primary-color: #e94560;
172
- --mw-dark-page-background: #1a1a2e;
171
+ --mw-primary-color: #0f766e;
172
+ --mw-dark-page-background: #172127;
173
173
  --mw-font-family-base: 'Your Custom Font', sans-serif;
174
174
  /* ... other overrides ... */
175
175
  }</code></pre>
@@ -181,14 +181,15 @@ href="path/maverick-wave.min.css"&gt;</code></pre>
181
181
  </p>
182
182
  <pre class="mw-code-block"><code>// your-styles.scss
183
183
  @use 'path/to/maverick-wave/src/scss/main' with (
184
- $primary-color: #e94560,
185
- $secondary-color: #f39c12
184
+ $primary-color: #0f766e,
185
+ $secondary-color: #b45309
186
186
  // ... other root colors ...
187
187
  );</code></pre>
188
188
  <p>
189
189
  Both methods end up at the same place: the derived tones (hover
190
- colors, translucent backgrounds, borders) are calculated at runtime
191
- with <code>color-mix()</code>, so a single root color is enough.
190
+ colors, translucent backgrounds, borders, the ink variant the dark
191
+ theme needs) are calculated at runtime with <code>color-mix()</code>
192
+ and relative color syntax, so a single root color is enough.
192
193
  </p>
193
194
 
194
195
  <h5 class="mw-mt-4 mw-mb-2">Adding Custom Fonts</h5>
@@ -196,7 +196,7 @@
196
196
  <h3 class="mw-card-title mw-mb-4">Single Tag</h3>
197
197
  <div class="mw-card mw-card-simple">
198
198
  <p class="mw-text-muted mw-mb-4">
199
- For a single status chip &ndash; e.g. in a table cell &ndash; use
199
+ For a single status chip - e.g. in a table cell - use
200
200
  <strong>mw-tag</strong>. It carries the colour itself, so no
201
201
  <strong>mw-tags</strong> container is needed.
202
202
  </p>
@@ -7,7 +7,7 @@
7
7
  <div class="mw-timeline-big mw-my-6">
8
8
  <div class="mw-timeline-big-step mw-active">
9
9
  <div class="mw-timeline-big-date-container">
10
- <div class="mw-timeline-big-date-main">01/2023 Present</div>
10
+ <div class="mw-timeline-big-date-main">01/2023 - Present</div>
11
11
  </div>
12
12
  <div class="mw-timeline-big-content">
13
13
  <div class="mw-card">
@@ -29,7 +29,7 @@
29
29
  <div class="mw-timeline-big-event">
30
30
  <span class="mw-timeline-big-event-date">05/2023</span>
31
31
  <span class="mw-timeline-big-event-title">
32
- AWS Certified Solutions Architect Professional
32
+ AWS Certified Solutions Architect - Professional
33
33
  </span>
34
34
  </div>
35
35
  </div>
@@ -37,7 +37,7 @@
37
37
 
38
38
  <div class="mw-timeline-big-step">
39
39
  <div class="mw-timeline-big-date-container">
40
- <div class="mw-timeline-big-date-main">08/2021 12/2022</div>
40
+ <div class="mw-timeline-big-date-main">08/2021 - 12/2022</div>
41
41
  <div class="mw-timeline-big-date-sub">(1 year 4 months)</div>
42
42
  </div>
43
43
  <div class="mw-timeline-big-content">
@@ -74,7 +74,7 @@
74
74
 
75
75
  <div class="mw-timeline-big-step">
76
76
  <div class="mw-timeline-big-date-container">
77
- <div class="mw-timeline-big-date-main">06/2020 07/2021</div>
77
+ <div class="mw-timeline-big-date-main">06/2020 - 07/2021</div>
78
78
  <div class="mw-timeline-big-date-sub">(1 year 1 month)</div>
79
79
  </div>
80
80
  <div class="mw-timeline-big-content">
@@ -105,7 +105,7 @@
105
105
 
106
106
  <div class="mw-timeline-big-step">
107
107
  <div class="mw-timeline-big-date-container">
108
- <div class="mw-timeline-big-date-main">02/2018 05/2020</div>
108
+ <div class="mw-timeline-big-date-main">02/2018 - 05/2020</div>
109
109
  <div class="mw-timeline-big-date-sub">(2 year 3 months)</div>
110
110
  </div>
111
111
  <div class="mw-timeline-big-content">
@@ -14,7 +14,7 @@
14
14
 
15
15
  <h4 class="mw-mt-6 mw-mb-2">Auto Margins</h4>
16
16
  <p class="mw-text-muted mw-text-sm mw-mb-3">
17
- Every margin utility also takes <code>auto</code> &mdash;
17
+ Every margin utility also takes <code>auto</code> -
18
18
  <code>mw-mx-auto</code> centers a block, <code>mw-ml-auto</code> pushes a
19
19
  flex item to the far side.
20
20
  </p>