qc-trousse-sdg 1.4.6 → 1.4.8

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 (62) hide show
  1. package/README.md +14 -0
  2. package/dist/css/qc-sdg-no-grid.min.css +1 -1
  3. package/dist/css/qc-sdg.min.css +1 -1
  4. package/dist/js/qc-sdg.min.js +1 -1
  5. package/package.json +1 -1
  6. package/public/css/qc-doc-sdg.css +38 -6
  7. package/public/css/qc-sdg-no-grid.css +67 -40
  8. package/public/css/qc-sdg.css +67 -40
  9. package/public/index.html +77 -23
  10. package/public/js/qc-doc-sdg.js +381 -225
  11. package/public/js/qc-sdg.js +1053 -633
  12. package/src/doc/qc-doc-sdg.js +6 -1
  13. package/src/doc/scss/components/_exemple.scss +5 -1
  14. package/src/doc/scss/qc-doc-sdg.scss +22 -4
  15. package/src/sdg/bases/Icon/Icon.svelte +2 -0
  16. package/src/sdg/bases/links/_links.scss +18 -12
  17. package/src/sdg/components/Alert/Alert.svelte +28 -9
  18. package/src/sdg/components/Alert/AlertWC.svelte +20 -5
  19. package/src/sdg/components/Alert/Test/AlertSvelteTest.svelte +25 -0
  20. package/src/sdg/components/Alert/Test/alertBaselineTest.html +13 -0
  21. package/src/sdg/components/Alert/Test/alertSvelteTest.html +1 -0
  22. package/src/sdg/components/Alert/_alert.html +23 -11
  23. package/src/sdg/components/Checkbox/Checkbox.svelte +6 -5
  24. package/src/sdg/components/DropdownList/DropdownList.svelte +65 -14
  25. package/src/sdg/components/DropdownList/DropdownListButton/DropdownListButton.svelte +2 -6
  26. package/src/sdg/components/DropdownList/DropdownListItems/DropdownListItems.svelte +4 -22
  27. package/src/sdg/components/DropdownList/DropdownListItems/DropdownListItemsMultiple/DropdownListItemsMultiple.svelte +2 -1
  28. package/src/sdg/components/DropdownList/DropdownListItems/DropdownListItemsSingle/DropdownListItemsSingle.svelte +2 -1
  29. package/src/sdg/components/DropdownList/SelectWC.svelte +39 -13
  30. package/src/sdg/components/DropdownList/Test/DropdownListSvelteTest.svelte +2 -2
  31. package/src/sdg/components/DropdownList/Test/dropdownListBaselineTest.html +7 -0
  32. package/src/sdg/components/DropdownList/_dropdownList.scss +7 -5
  33. package/src/sdg/components/DropdownList/_select.html +31 -5
  34. package/src/sdg/components/ExternalLink/ExternalLink.svelte +36 -74
  35. package/src/sdg/components/ExternalLink/ExternalLinkWC.svelte +44 -1
  36. package/src/sdg/components/ExternalLink/externalLinkBaselineTest.html +45 -0
  37. package/src/sdg/components/Fieldset/_fieldset.scss +1 -1
  38. package/src/sdg/components/Label/LabelText.svelte +2 -1
  39. package/src/sdg/components/Label/_label.scss +10 -2
  40. package/src/sdg/components/PivFooter/_pivFooter.html +4 -4
  41. package/src/sdg/components/SearchInput/SearchInput.svelte +14 -2
  42. package/src/sdg/components/SearchInput/SearchInputWC.svelte +2 -0
  43. package/src/sdg/components/SearchInput/_searchInput.html +18 -2
  44. package/src/sdg/components/SearchInput/_searchInput.scss +10 -1
  45. package/src/sdg/components/TextField/Test/TextFieldEmbededTest.svelte +19 -3
  46. package/src/sdg/components/TextField/Test/textFieldBaselineTest.html +5 -2
  47. package/src/sdg/components/TextField/TextField.svelte +12 -6
  48. package/src/sdg/components/TextField/TextFieldWC.svelte +19 -4
  49. package/src/sdg/components/TextField/_textField.html +1 -1
  50. package/src/sdg/components/TextField/_textField.scss +0 -6
  51. package/src/sdg/components/TextField/textFieldUtils.js +3 -2
  52. package/src/sdg/components/utils.js +23 -0
  53. package/src/sdg/qc-sdg-test.js +2 -1
  54. package/src/sdg/scss/lib/_mixins.scss +6 -0
  55. package/src/sdg/scss/utilities/_states.scss +1 -1
  56. package/tests/alert-baseline.spec.ts +23 -0
  57. package/tests/alert-svelte.spec.ts +23 -0
  58. package/tests/buildSvelteTestsIgnore.json +2 -1
  59. package/tests/dropdown-list-baseline.spec.ts +8 -0
  60. package/tests/external-link-baseline.spec.ts +30 -0
  61. package/tests/textfield-baseline.spec.ts +5 -5
  62. package/tests/textfield-svelte.spec.ts +5 -5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qc-trousse-sdg",
3
- "version": "1.4.6",
3
+ "version": "1.4.8",
4
4
  "description": "Trousse de développement du Système de design gouvernemental du Québec",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -167,6 +167,9 @@ code.hljs {
167
167
  .exemple-area > figure > figcaption {
168
168
  display: block;
169
169
  }
170
+ .exemple-area > figure:has(qc-select) {
171
+ overflow-x: visible;
172
+ }
170
173
 
171
174
  table.qc-table {
172
175
  margin-bottom: 0;
@@ -352,39 +355,68 @@ h1, h2, h3, h4, h5, h6 {
352
355
  border: 1px solid var(--qc-color-grey-light);
353
356
  }
354
357
 
358
+ a.pseudo-visited {
359
+ color: var(--qc-color-link-visited);
360
+ }
361
+ a.pseudo-visited > .qc-ext-link-img {
362
+ background-color: var(--qc-color-link-visited);
363
+ }
355
364
  a.pseudo-hover {
356
365
  color: var(--qc-color-link-hover);
357
366
  text-decoration: none;
358
367
  }
368
+ a.pseudo-hover .qc-ext-link-text {
369
+ text-decoration: none;
370
+ }
371
+ a.pseudo-hover > .qc-ext-link-img {
372
+ background-color: var(--qc-color-link-hover);
373
+ }
359
374
  a.pseudo-active {
360
375
  color: var(--qc-color-link-active);
361
376
  text-decoration: none;
362
377
  }
378
+ a.pseudo-active .qc-ext-link-text {
379
+ text-decoration: none;
380
+ }
381
+ a.pseudo-active > .qc-ext-link-img {
382
+ background-color: var(--qc-color-link-active);
383
+ }
363
384
  a.pseudo-focus {
364
385
  color: var(--qc-color-link-hover);
365
386
  text-decoration: none;
387
+ }
388
+ a.pseudo-focus .qc-ext-link-text {
389
+ text-decoration: none;
390
+ }
391
+ a.pseudo-focus {
366
392
  outline: 2px solid var(--qc-color-link-focus-outline);
367
393
  outline-offset: 1px;
368
394
  }
369
- a.pseudo-visited {
370
- color: var(--qc-color-link-visited) !important;
395
+ a.pseudo-focus > .qc-ext-link-img {
396
+ background-color: var(--qc-color-link-text);
371
397
  }
372
398
  a.not-visited:visited:not(:hover) {
373
399
  color: var(--qc-color-link-text);
374
400
  }
401
+ a.not-visited:visited:not(:hover) > .qc-ext-link-text {
402
+ color: var(--qc-color-link-text);
403
+ }
375
404
 
376
- a.pseudo-visited span.qc-ext-link-img {
405
+ a.pseudo-visited div.qc-ext-link-img {
377
406
  background: var(--qc-color-link-visited) !important;
378
407
  }
379
- a.pseudo-focus span.qc-ext-link-img {
408
+ a.pseudo-focus div.qc-ext-link-img {
380
409
  background: var(--qc-color-link-hover) !important;
381
410
  }
382
- a.pseudo-hover span.qc-ext-link-img {
411
+ a.pseudo-hover div.qc-ext-link-img {
383
412
  background: var(--qc-color-link-hover) !important;
384
413
  }
385
- a.pseudo-active span.qc-ext-link-img {
414
+ a.pseudo-active div.qc-ext-link-img {
386
415
  background: var(--qc-color-link-active) !important;
387
416
  }
417
+ a.not-visited:visited:not(:hover) div.qc-ext-link-img {
418
+ background: var(--qc-color-link-text) !important;
419
+ }
388
420
 
389
421
  p, h1, h2, h3, h4, h5, h6 {
390
422
  hyphens: auto;
@@ -755,7 +755,7 @@ qc-icon {
755
755
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAzMDEuNjkxIDMwMS42OTEiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMwMS42OTEgMzAxLjY5MTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwb2x5Z29uIHBvaW50cz0iMTE5LjE1MSwwIDEyOS42LDIxOC40MDYgMTcyLjA2LDIxOC40MDYgMTgyLjU0LDAiIC8+Cgk8cmVjdCB4PSIxMzAuNTYzIiB5PSIyNjEuMTY4IiB3aWR0aD0iNDAuNTI1IiBoZWlnaHQ9IjQwLjUyMyIgLz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
756
756
  }
757
757
 
758
- .icon-external-link, span.qc-ext-link-img, .qc-icon[data-img-type=external-link] {
758
+ .icon-external-link, .qc-ext-link-img, .qc-icon[data-img-type=external-link] {
759
759
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyOS4yMDciIGhlaWdodD0iMjkuNjA4IiB2aWV3Qm94PSIwIDAgMjkuMjA3IDI5LjYwOCI+CiAgPGcgaWQ9Ikdyb3VwZV8zOTQiIGRhdGEtbmFtZT0iR3JvdXBlIDM5NCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEzOSAtNTQ1LjYyNCkiPgogICAgPGcgaWQ9Ikdyb3VwZV8zOTAiIGRhdGEtbmFtZT0iR3JvdXBlIDM5MCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTE3MjIuMDA4IDQzNy41MjQpIj4KICAgICAgPGcgaWQ9Ikdyb3VwZV8zODkiIGRhdGEtbmFtZT0iR3JvdXBlIDM4OSI+CiAgICAgICAgPHBhdGggaWQ9IlRyYWPDqV82NzEiIGRhdGEtbmFtZT0iVHJhY8OpIDY3MSIgZD0iTTE4ODQuMDg3LDEyMC44MTRhMS4xNDUsMS4xNDUsMCwwLDAtMS4xNDUsMS4xNDV2MTMuNDU4SDE4NjMuM3YtMjAuMWgxMy4wNTdhMS4xNDYsMS4xNDYsMCwxLDAsMC0yLjI5MWgtMTUuMzQ4djI0LjY4M2gyNC4yMjVWMTIxLjk1OUExLjE0NiwxLjE0NiwwLDAsMCwxODg0LjA4NywxMjAuODE0WiIgLz4KICAgICAgICA8cGF0aCBpZD0iVHJhY8OpXzY3MiIgZGF0YS1uYW1lPSJUcmFjw6kgNjcyIiBkPSJNMTg3OS43OTIsMTA4LjFhMS4xNDYsMS4xNDYsMCwwLDAsMCwyLjI5MWg2LjUzM2wtMTQuMDE5LDE0LjE3YTEuMTQ2LDEuMTQ2LDAsMCwwLDEuNjI5LDEuNjExbDEzLjk4OS0xNC4xNHY2LjM3N2ExLjE0NiwxLjE0NiwwLDAsMCwyLjI5MSwwVjEwOC4xWiIgLz4KICAgICAgPC9nPgogICAgPC9nPgogIDwvZz4KPC9zdmc+Cg==");
760
760
  }
761
761
 
@@ -826,6 +826,10 @@ qc-icon {
826
826
  a {
827
827
  color: var(--qc-color-link-text);
828
828
  }
829
+ a:has(.qc-ext-link-text) {
830
+ white-space: nowrap;
831
+ text-decoration: none;
832
+ }
829
833
  a:visited {
830
834
  color: var(--qc-color-link-visited);
831
835
  }
@@ -833,9 +837,17 @@ a:hover {
833
837
  color: var(--qc-color-link-hover);
834
838
  text-decoration: none;
835
839
  }
840
+ a:hover .qc-ext-link-text {
841
+ text-decoration: none;
842
+ }
836
843
  a:focus, a:focus-visible {
837
844
  color: var(--qc-color-link-hover);
838
845
  text-decoration: none;
846
+ }
847
+ a:focus .qc-ext-link-text, a:focus-visible .qc-ext-link-text {
848
+ text-decoration: none;
849
+ }
850
+ a:focus, a:focus-visible {
839
851
  outline: 2px solid var(--qc-color-link-focus-outline);
840
852
  outline-offset: 1px;
841
853
  }
@@ -843,33 +855,38 @@ a:active {
843
855
  color: var(--qc-color-link-active);
844
856
  text-decoration: none;
845
857
  }
858
+ a:active .qc-ext-link-text {
859
+ text-decoration: none;
860
+ }
846
861
  a .img-wrap {
847
862
  white-space: nowrap;
848
863
  }
849
864
 
850
- span.qc-ext-link-img {
865
+ .qc-external-link .qc-ext-link-text {
866
+ white-space: normal;
867
+ text-decoration: underline;
868
+ }
869
+
870
+ .qc-ext-link-img {
851
871
  height: 0.6875em;
852
872
  width: 0.6875em;
853
- display: inline-block;
854
873
  background: var(--qc-color-link-text);
855
874
  mask-size: 0.6875em;
856
- margin-left: 4px;
875
+ display: inline-block;
876
+ mask-repeat: no-repeat;
857
877
  }
858
- a:visited span.qc-ext-link-img {
878
+ a:visited .qc-ext-link-img {
859
879
  background: var(--qc-color-link-visited);
860
880
  }
861
- a:focus span.qc-ext-link-img {
881
+ a:focus .qc-ext-link-img {
862
882
  background: var(--qc-color-link-hover);
863
883
  }
864
- a:hover span.qc-ext-link-img {
884
+ a:hover .qc-ext-link-img {
865
885
  background: var(--qc-color-link-hover);
866
886
  }
867
- a:active span.qc-ext-link-img {
887
+ a:active .qc-ext-link-img {
868
888
  background: var(--qc-color-link-active);
869
889
  }
870
- .img-wrap + span.qc-ext-link-img {
871
- display: none;
872
- }
873
890
 
874
891
  p {
875
892
  margin-top: 0;
@@ -1270,7 +1287,7 @@ hr {
1270
1287
  line-height: var(--qc-line-height-md);
1271
1288
  font-weight: var(--qc-font-weight-bold);
1272
1289
  color: var(--qc-color-red-regular);
1273
- margin-left: 0.6rem;
1290
+ margin-left: var(--qc-spacer-xs);
1274
1291
  }
1275
1292
 
1276
1293
  .qc-disabled {
@@ -1785,6 +1802,26 @@ qc-search-input {
1785
1802
  width: 100%;
1786
1803
  max-width: 54.8rem;
1787
1804
  }
1805
+ qc-search-input[size=xs] {
1806
+ max-width: 100%;
1807
+ width: 6.3rem;
1808
+ }
1809
+ qc-search-input[size=sm] {
1810
+ max-width: 100%;
1811
+ width: 15.6rem;
1812
+ }
1813
+ qc-search-input[size=md] {
1814
+ max-width: 100%;
1815
+ width: 24.9rem;
1816
+ }
1817
+ qc-search-input[size=lg] {
1818
+ max-width: 100%;
1819
+ width: 52.8rem;
1820
+ }
1821
+ qc-search-input[size=xl] {
1822
+ max-width: 100%;
1823
+ width: 82.5rem;
1824
+ }
1788
1825
 
1789
1826
  .qc-search-bar, .qc-search-input {
1790
1827
  display: flex;
@@ -2013,9 +2050,9 @@ input[type=radio].qc-choicefield:checked.qc-compact::before {
2013
2050
  justify-items: start;
2014
2051
  }
2015
2052
  .qc-fieldset legend {
2016
- font-weight: var(--qc-font-weight-content-bold);
2017
2053
  display: inline-block;
2018
2054
  margin-bottom: var(--qc-spacer-md);
2055
+ white-space: nowrap;
2019
2056
  }
2020
2057
  .qc-fieldset.qc-compact {
2021
2058
  margin-bottom: var(--qc-spacer-sm);
@@ -2168,9 +2205,10 @@ input[type=checkbox].qc-choicefield.qc-compact:checked::after {
2168
2205
  }
2169
2206
  .qc-label, qc-textfield label,
2170
2207
  .qc-textfield label {
2171
- font-weight: var(--qc-font-weight-content-bold);
2172
- display: block;
2208
+ display: inline-block;
2173
2209
  width: fit-content;
2210
+ white-space: nowrap;
2211
+ margin: 0;
2174
2212
  }
2175
2213
  .qc-label.qc-compact, qc-textfield label.qc-compact,
2176
2214
  .qc-textfield label.qc-compact {
@@ -2186,6 +2224,14 @@ input[type=checkbox].qc-choicefield.qc-compact:checked::after {
2186
2224
  cursor: not-allowed;
2187
2225
  }
2188
2226
 
2227
+ .qc-label-text {
2228
+ white-space: wrap;
2229
+ margin: 0;
2230
+ font-size: var(--qc-font-size-md);
2231
+ line-height: var(--qc-line-height-md);
2232
+ font-weight: var(--qc-font-weight-bold);
2233
+ }
2234
+
2189
2235
  qc-textfield,
2190
2236
  .qc-textfield {
2191
2237
  display: block;
@@ -2245,26 +2291,6 @@ qc-textfield textarea:disabled {
2245
2291
  padding: 0.6rem;
2246
2292
  }
2247
2293
 
2248
- [size=xs] {
2249
- max-width: 100%;
2250
- }
2251
-
2252
- [size=sm] {
2253
- max-width: 100%;
2254
- }
2255
-
2256
- [size=md] {
2257
- max-width: 100%;
2258
- }
2259
-
2260
- [size=lg] {
2261
- max-width: 100%;
2262
- }
2263
-
2264
- [size=xl] {
2265
- max-width: 100%;
2266
- }
2267
-
2268
2294
  [size=xs] input, [size=xs] input + .qc-textfield-charcount,
2269
2295
  [size=xs] textarea,
2270
2296
  [size=xs] textarea + .qc-textfield-charcount {
@@ -2608,15 +2634,16 @@ li[aria-selected=true] {
2608
2634
 
2609
2635
  .qc-dropdown-list-expanded {
2610
2636
  position: absolute;
2611
- width: calc(100% + 2px);
2612
- left: -0.1rem;
2613
- right: -0.1rem;
2614
- top: 100%;
2637
+ width: calc(100% + 2 * var(--dropdown-button-border) px);
2638
+ left: calc(var(--dropdown-button-border) * 0.1 * -1rem);
2639
+ right: calc(var(--dropdown-button-border) * 0.1 * -1rem);
2640
+ top: calc(var(--dropdown-items-top-offset) * 0.1 * 1rem);
2615
2641
  z-index: 11;
2616
2642
  background-color: var(--qc-color-background);
2617
2643
  border-left: 0.1rem solid var(--qc-color-grey-medium);
2618
2644
  border-right: 0.1rem solid var(--qc-color-grey-medium);
2619
- border-bottom: 0.1rem solid var(--qc-color-grey-medium);
2645
+ border-bottom: calc(var(--dropdown-items-bottom-border) * 0.1 * 1rem) solid var(--qc-color-grey-medium);
2646
+ border-top: calc(var(--dropdown-items-top-border) * 0.1 * 1rem) solid var(--qc-color-grey-medium);
2620
2647
  }
2621
2648
 
2622
2649
  .qc-dropdown-list-hidden {
@@ -755,7 +755,7 @@ qc-icon {
755
755
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAzMDEuNjkxIDMwMS42OTEiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMwMS42OTEgMzAxLjY5MTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwb2x5Z29uIHBvaW50cz0iMTE5LjE1MSwwIDEyOS42LDIxOC40MDYgMTcyLjA2LDIxOC40MDYgMTgyLjU0LDAiIC8+Cgk8cmVjdCB4PSIxMzAuNTYzIiB5PSIyNjEuMTY4IiB3aWR0aD0iNDAuNTI1IiBoZWlnaHQ9IjQwLjUyMyIgLz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
756
756
  }
757
757
 
758
- .icon-external-link, span.qc-ext-link-img, .qc-icon[data-img-type=external-link] {
758
+ .icon-external-link, .qc-ext-link-img, .qc-icon[data-img-type=external-link] {
759
759
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyOS4yMDciIGhlaWdodD0iMjkuNjA4IiB2aWV3Qm94PSIwIDAgMjkuMjA3IDI5LjYwOCI+CiAgPGcgaWQ9Ikdyb3VwZV8zOTQiIGRhdGEtbmFtZT0iR3JvdXBlIDM5NCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEzOSAtNTQ1LjYyNCkiPgogICAgPGcgaWQ9Ikdyb3VwZV8zOTAiIGRhdGEtbmFtZT0iR3JvdXBlIDM5MCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTE3MjIuMDA4IDQzNy41MjQpIj4KICAgICAgPGcgaWQ9Ikdyb3VwZV8zODkiIGRhdGEtbmFtZT0iR3JvdXBlIDM4OSI+CiAgICAgICAgPHBhdGggaWQ9IlRyYWPDqV82NzEiIGRhdGEtbmFtZT0iVHJhY8OpIDY3MSIgZD0iTTE4ODQuMDg3LDEyMC44MTRhMS4xNDUsMS4xNDUsMCwwLDAtMS4xNDUsMS4xNDV2MTMuNDU4SDE4NjMuM3YtMjAuMWgxMy4wNTdhMS4xNDYsMS4xNDYsMCwxLDAsMC0yLjI5MWgtMTUuMzQ4djI0LjY4M2gyNC4yMjVWMTIxLjk1OUExLjE0NiwxLjE0NiwwLDAsMCwxODg0LjA4NywxMjAuODE0WiIgLz4KICAgICAgICA8cGF0aCBpZD0iVHJhY8OpXzY3MiIgZGF0YS1uYW1lPSJUcmFjw6kgNjcyIiBkPSJNMTg3OS43OTIsMTA4LjFhMS4xNDYsMS4xNDYsMCwwLDAsMCwyLjI5MWg2LjUzM2wtMTQuMDE5LDE0LjE3YTEuMTQ2LDEuMTQ2LDAsMCwwLDEuNjI5LDEuNjExbDEzLjk4OS0xNC4xNHY2LjM3N2ExLjE0NiwxLjE0NiwwLDAsMCwyLjI5MSwwVjEwOC4xWiIgLz4KICAgICAgPC9nPgogICAgPC9nPgogIDwvZz4KPC9zdmc+Cg==");
760
760
  }
761
761
 
@@ -826,6 +826,10 @@ qc-icon {
826
826
  a {
827
827
  color: var(--qc-color-link-text);
828
828
  }
829
+ a:has(.qc-ext-link-text) {
830
+ white-space: nowrap;
831
+ text-decoration: none;
832
+ }
829
833
  a:visited {
830
834
  color: var(--qc-color-link-visited);
831
835
  }
@@ -833,9 +837,17 @@ a:hover {
833
837
  color: var(--qc-color-link-hover);
834
838
  text-decoration: none;
835
839
  }
840
+ a:hover .qc-ext-link-text {
841
+ text-decoration: none;
842
+ }
836
843
  a:focus, a:focus-visible {
837
844
  color: var(--qc-color-link-hover);
838
845
  text-decoration: none;
846
+ }
847
+ a:focus .qc-ext-link-text, a:focus-visible .qc-ext-link-text {
848
+ text-decoration: none;
849
+ }
850
+ a:focus, a:focus-visible {
839
851
  outline: 2px solid var(--qc-color-link-focus-outline);
840
852
  outline-offset: 1px;
841
853
  }
@@ -843,33 +855,38 @@ a:active {
843
855
  color: var(--qc-color-link-active);
844
856
  text-decoration: none;
845
857
  }
858
+ a:active .qc-ext-link-text {
859
+ text-decoration: none;
860
+ }
846
861
  a .img-wrap {
847
862
  white-space: nowrap;
848
863
  }
849
864
 
850
- span.qc-ext-link-img {
865
+ .qc-external-link .qc-ext-link-text {
866
+ white-space: normal;
867
+ text-decoration: underline;
868
+ }
869
+
870
+ .qc-ext-link-img {
851
871
  height: 0.6875em;
852
872
  width: 0.6875em;
853
- display: inline-block;
854
873
  background: var(--qc-color-link-text);
855
874
  mask-size: 0.6875em;
856
- margin-left: 4px;
875
+ display: inline-block;
876
+ mask-repeat: no-repeat;
857
877
  }
858
- a:visited span.qc-ext-link-img {
878
+ a:visited .qc-ext-link-img {
859
879
  background: var(--qc-color-link-visited);
860
880
  }
861
- a:focus span.qc-ext-link-img {
881
+ a:focus .qc-ext-link-img {
862
882
  background: var(--qc-color-link-hover);
863
883
  }
864
- a:hover span.qc-ext-link-img {
884
+ a:hover .qc-ext-link-img {
865
885
  background: var(--qc-color-link-hover);
866
886
  }
867
- a:active span.qc-ext-link-img {
887
+ a:active .qc-ext-link-img {
868
888
  background: var(--qc-color-link-active);
869
889
  }
870
- .img-wrap + span.qc-ext-link-img {
871
- display: none;
872
- }
873
890
 
874
891
  p {
875
892
  margin-top: 0;
@@ -1270,7 +1287,7 @@ hr {
1270
1287
  line-height: var(--qc-line-height-md);
1271
1288
  font-weight: var(--qc-font-weight-bold);
1272
1289
  color: var(--qc-color-red-regular);
1273
- margin-left: 0.6rem;
1290
+ margin-left: var(--qc-spacer-xs);
1274
1291
  }
1275
1292
 
1276
1293
  .qc-disabled {
@@ -1785,6 +1802,26 @@ qc-search-input {
1785
1802
  width: 100%;
1786
1803
  max-width: 54.8rem;
1787
1804
  }
1805
+ qc-search-input[size=xs] {
1806
+ max-width: 100%;
1807
+ width: 6.3rem;
1808
+ }
1809
+ qc-search-input[size=sm] {
1810
+ max-width: 100%;
1811
+ width: 15.6rem;
1812
+ }
1813
+ qc-search-input[size=md] {
1814
+ max-width: 100%;
1815
+ width: 24.9rem;
1816
+ }
1817
+ qc-search-input[size=lg] {
1818
+ max-width: 100%;
1819
+ width: 52.8rem;
1820
+ }
1821
+ qc-search-input[size=xl] {
1822
+ max-width: 100%;
1823
+ width: 82.5rem;
1824
+ }
1788
1825
 
1789
1826
  .qc-search-bar, .qc-search-input {
1790
1827
  display: flex;
@@ -2013,9 +2050,9 @@ input[type=radio].qc-choicefield:checked.qc-compact::before {
2013
2050
  justify-items: start;
2014
2051
  }
2015
2052
  .qc-fieldset legend {
2016
- font-weight: var(--qc-font-weight-content-bold);
2017
2053
  display: inline-block;
2018
2054
  margin-bottom: var(--qc-spacer-md);
2055
+ white-space: nowrap;
2019
2056
  }
2020
2057
  .qc-fieldset.qc-compact {
2021
2058
  margin-bottom: var(--qc-spacer-sm);
@@ -2168,9 +2205,10 @@ input[type=checkbox].qc-choicefield.qc-compact:checked::after {
2168
2205
  }
2169
2206
  .qc-label, qc-textfield label,
2170
2207
  .qc-textfield label {
2171
- font-weight: var(--qc-font-weight-content-bold);
2172
- display: block;
2208
+ display: inline-block;
2173
2209
  width: fit-content;
2210
+ white-space: nowrap;
2211
+ margin: 0;
2174
2212
  }
2175
2213
  .qc-label.qc-compact, qc-textfield label.qc-compact,
2176
2214
  .qc-textfield label.qc-compact {
@@ -2186,6 +2224,14 @@ input[type=checkbox].qc-choicefield.qc-compact:checked::after {
2186
2224
  cursor: not-allowed;
2187
2225
  }
2188
2226
 
2227
+ .qc-label-text {
2228
+ white-space: wrap;
2229
+ margin: 0;
2230
+ font-size: var(--qc-font-size-md);
2231
+ line-height: var(--qc-line-height-md);
2232
+ font-weight: var(--qc-font-weight-bold);
2233
+ }
2234
+
2189
2235
  qc-textfield,
2190
2236
  .qc-textfield {
2191
2237
  display: block;
@@ -2245,26 +2291,6 @@ qc-textfield textarea:disabled {
2245
2291
  padding: 0.6rem;
2246
2292
  }
2247
2293
 
2248
- [size=xs] {
2249
- max-width: 100%;
2250
- }
2251
-
2252
- [size=sm] {
2253
- max-width: 100%;
2254
- }
2255
-
2256
- [size=md] {
2257
- max-width: 100%;
2258
- }
2259
-
2260
- [size=lg] {
2261
- max-width: 100%;
2262
- }
2263
-
2264
- [size=xl] {
2265
- max-width: 100%;
2266
- }
2267
-
2268
2294
  [size=xs] input, [size=xs] input + .qc-textfield-charcount,
2269
2295
  [size=xs] textarea,
2270
2296
  [size=xs] textarea + .qc-textfield-charcount {
@@ -2608,15 +2634,16 @@ li[aria-selected=true] {
2608
2634
 
2609
2635
  .qc-dropdown-list-expanded {
2610
2636
  position: absolute;
2611
- width: calc(100% + 2px);
2612
- left: -0.1rem;
2613
- right: -0.1rem;
2614
- top: 100%;
2637
+ width: calc(100% + 2 * var(--dropdown-button-border) px);
2638
+ left: calc(var(--dropdown-button-border) * 0.1 * -1rem);
2639
+ right: calc(var(--dropdown-button-border) * 0.1 * -1rem);
2640
+ top: calc(var(--dropdown-items-top-offset) * 0.1 * 1rem);
2615
2641
  z-index: 11;
2616
2642
  background-color: var(--qc-color-background);
2617
2643
  border-left: 0.1rem solid var(--qc-color-grey-medium);
2618
2644
  border-right: 0.1rem solid var(--qc-color-grey-medium);
2619
- border-bottom: 0.1rem solid var(--qc-color-grey-medium);
2645
+ border-bottom: calc(var(--dropdown-items-bottom-border) * 0.1 * 1rem) solid var(--qc-color-grey-medium);
2646
+ border-top: calc(var(--dropdown-items-top-border) * 0.1 * 1rem) solid var(--qc-color-grey-medium);
2620
2647
  }
2621
2648
 
2622
2649
  .qc-dropdown-list-hidden {