@fremtind/jokul 4.4.0 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/build/build-stats.html +1 -1
  2. package/build/cjs/components/datepicker/DatePicker.cjs +1 -1
  3. package/build/cjs/components/datepicker/DatePicker.cjs.map +1 -1
  4. package/build/cjs/components/expander/ExpandablePanel.cjs +1 -1
  5. package/build/cjs/components/expander/ExpandablePanel.cjs.map +1 -1
  6. package/build/cjs/components/popover/Popover.cjs +1 -1
  7. package/build/cjs/components/popover/Popover.cjs.map +1 -1
  8. package/build/es/components/datepicker/DatePicker.js +1 -1
  9. package/build/es/components/datepicker/DatePicker.js.map +1 -1
  10. package/build/es/components/expander/ExpandablePanel.js +1 -1
  11. package/build/es/components/expander/ExpandablePanel.js.map +1 -1
  12. package/build/es/components/popover/Popover.js +1 -1
  13. package/build/es/components/popover/Popover.js.map +1 -1
  14. package/package.json +1 -1
  15. package/styles/components/button/button.css +4 -0
  16. package/styles/components/button/button.min.css +1 -1
  17. package/styles/components/button/button.scss +11 -11
  18. package/styles/components/card/card.css +1 -1
  19. package/styles/components/card/card.min.css +1 -1
  20. package/styles/components/card/card.scss +1 -1
  21. package/styles/components/checkbox/checkbox.css +28 -1
  22. package/styles/components/checkbox/checkbox.min.css +1 -1
  23. package/styles/components/checkbox/checkbox.scss +10 -1
  24. package/styles/components/checkbox-panel/checkbox-panel.css +31 -1
  25. package/styles/components/checkbox-panel/checkbox-panel.min.css +1 -1
  26. package/styles/components/checkbox-panel/checkbox-panel.scss +4 -0
  27. package/styles/components/combobox/combobox.css +4 -1
  28. package/styles/components/combobox/combobox.min.css +1 -1
  29. package/styles/components/combobox/combobox.scss +4 -1
  30. package/styles/components/countdown/countdown.css +2 -2
  31. package/styles/components/countdown/countdown.min.css +1 -1
  32. package/styles/components/expander/expandable.css +14 -14
  33. package/styles/components/expander/expandable.min.css +1 -1
  34. package/styles/components/expander/expandable.scss +13 -17
  35. package/styles/components/feedback/feedback.css +6 -8
  36. package/styles/components/feedback/feedback.min.css +1 -1
  37. package/styles/components/feedback/feedback.scss +3 -9
  38. package/styles/components/file-input/file-input.css +13 -9
  39. package/styles/components/file-input/file-input.min.css +1 -1
  40. package/styles/components/input-group/input-group.css +2 -2
  41. package/styles/components/input-group/input-group.min.css +1 -1
  42. package/styles/components/link-list/link-list.css +4 -1
  43. package/styles/components/link-list/link-list.min.css +1 -1
  44. package/styles/components/link-list/link-list.scss +4 -1
  45. package/styles/components/loader/loader.css +6 -6
  46. package/styles/components/loader/loader.min.css +1 -1
  47. package/styles/components/loader/skeleton-loader.css +3 -3
  48. package/styles/components/loader/skeleton-loader.min.css +1 -1
  49. package/styles/components/message/message.css +2 -2
  50. package/styles/components/message/message.min.css +1 -1
  51. package/styles/components/popover/popover.css +11 -0
  52. package/styles/components/popover/popover.min.css +1 -1
  53. package/styles/components/popover/popover.scss +14 -0
  54. package/styles/components/progress-bar/progress-bar.css +25 -1
  55. package/styles/components/progress-bar/progress-bar.min.css +1 -1
  56. package/styles/components/progress-bar/progress-bar.scss +5 -0
  57. package/styles/components/radio-button/radio-button.css +29 -1
  58. package/styles/components/radio-button/radio-button.min.css +1 -1
  59. package/styles/components/radio-button/radio-button.scss +11 -1
  60. package/styles/components/radio-panel/radio-panel.css +3 -0
  61. package/styles/components/radio-panel/radio-panel.min.css +1 -1
  62. package/styles/components/radio-panel/radio-panel.scss +4 -0
  63. package/styles/components/segmented-control/segmented-control.css +31 -3
  64. package/styles/components/segmented-control/segmented-control.min.css +1 -1
  65. package/styles/components/system-message/system-message.css +2 -2
  66. package/styles/components/system-message/system-message.min.css +1 -1
  67. package/styles/components/toast/toast.css +4 -4
  68. package/styles/components/toast/toast.min.css +1 -1
  69. package/styles/components/toggle-switch/toggle-switch.css +2 -7
  70. package/styles/components/toggle-switch/toggle-switch.min.css +2 -2
  71. package/styles/components/toggle-switch/toggle-switch.scss +2 -9
  72. package/styles/styles.css +155 -56
  73. package/styles/styles.min.css +2 -2
package/styles/styles.css CHANGED
@@ -467,7 +467,7 @@
467
467
  --color: var(--jkl-color-text-default);
468
468
  }
469
469
  .jkl-form-support-label--error .jkl-form-support-label__icon, .jkl-form-support-label--warning .jkl-form-support-label__icon, .jkl-form-support-label--success .jkl-form-support-label__icon {
470
- animation: 400ms cubic-bezier(0, 0, 0.3, 1) 250ms jkl-support-icon-entrance-u5ixgyl forwards;
470
+ animation: 400ms cubic-bezier(0, 0, 0.3, 1) 250ms jkl-support-icon-entrance-u0o407z forwards;
471
471
  }
472
472
  .jkl-form-support-label--sr-only {
473
473
  border: 0 !important;
@@ -533,7 +533,7 @@
533
533
  .jkl-label:has(+ .jkl-input-group-description) {
534
534
  margin-block-end: var(--jkl-spacing-4);
535
535
  }
536
- @keyframes jkl-support-icon-entrance-u5ixgyl {
536
+ @keyframes jkl-support-icon-entrance-u0o407z {
537
537
  0% {
538
538
  margin-right: 0;
539
539
  opacity: 0;
@@ -751,6 +751,7 @@
751
751
  --jkl-button-padding-icon: var(--jkl-unit-20);
752
752
  --jkl-button-padding-icon-button: var(--jkl-unit-10);
753
753
  --jkl-button-tertiary-padding-icon: var(--jkl-unit-05);
754
+ --jkl-button-text-ink-offset: 0.1em;
754
755
  --jkl-icon-weight: var(--jkl-icon-weight-bold);
755
756
  --text-color: var(--jkl-color-text-default);
756
757
  --background-color: transparent;
@@ -815,8 +816,11 @@
815
816
  pointer-events: none;
816
817
  }
817
818
  .jkl-button__text {
819
+ display: block;
818
820
  width: 100%;
819
821
  max-width: 100%;
822
+ padding-block-start: var(--jkl-button-text-ink-offset);
823
+ margin-block-start: calc(var(--jkl-button-text-ink-offset) * -1);
820
824
  overflow: hidden;
821
825
  white-space: nowrap;
822
826
  text-overflow: ellipsis;
@@ -885,22 +889,22 @@
885
889
  animation: 2500ms linear infinite;
886
890
  }
887
891
  .jkl-loader__dot--left {
888
- animation-name: jkl-loader-left-spin-u5ixgyo;
892
+ animation-name: jkl-loader-left-spin-u0o408j;
889
893
  margin-right: calc(var(--jkl-loader-spacing) * 0.9);
890
894
  }
891
895
  .jkl-loader__dot--middle {
892
- animation-name: jkl-loader-middle-spin-u5ixgz7;
896
+ animation-name: jkl-loader-middle-spin-u0o4092;
893
897
  margin-right: var(--jkl-loader-spacing);
894
898
  }
895
899
  .jkl-loader__dot--right {
896
- animation-name: jkl-loader-right-spin-u5ixgzh;
900
+ animation-name: jkl-loader-right-spin-u0o409n;
897
901
  }
898
902
  @media screen and (forced-colors: active) {
899
903
  .jkl-loader__dot {
900
904
  background-color: CanvasText;
901
905
  }
902
906
  }
903
- @keyframes jkl-loader-left-spin-u5ixgyo {
907
+ @keyframes jkl-loader-left-spin-u0o408j {
904
908
  0% {
905
909
  transform: rotate(0) scale(0);
906
910
  }
@@ -914,7 +918,7 @@
914
918
  transform: rotate(180deg) scale(0);
915
919
  }
916
920
  }
917
- @keyframes jkl-loader-middle-spin-u5ixgz7 {
921
+ @keyframes jkl-loader-middle-spin-u0o4092 {
918
922
  0% {
919
923
  transform: rotate(20deg) scale(0);
920
924
  }
@@ -931,7 +935,7 @@
931
935
  transform: rotate(200deg) scale(0);
932
936
  }
933
937
  }
934
- @keyframes jkl-loader-right-spin-u5ixgzh {
938
+ @keyframes jkl-loader-right-spin-u0o409n {
935
939
  0% {
936
940
  transform: rotate(40deg) scale(0);
937
941
  }
@@ -971,7 +975,7 @@
971
975
  @media screen and (forced-colors: active) {
972
976
  .jkl-skeleton-element {
973
977
  border: 1px solid CanvasText;
974
- animation: 2s ease infinite jkl-blink-u5ixh01;
978
+ animation: 2s ease infinite jkl-blink-u0o409o;
975
979
  }
976
980
  }
977
981
  .jkl-skeleton-input {
@@ -1019,10 +1023,10 @@
1019
1023
  }
1020
1024
  @media screen and (forced-colors: active) {
1021
1025
  .jkl-skeleton-table {
1022
- animation: 2s ease-in-out infinite jkl-blink-u5ixh01;
1026
+ animation: 2s ease-in-out infinite jkl-blink-u0o409o;
1023
1027
  }
1024
1028
  }
1025
- @keyframes jkl-blink-u5ixh01 {
1029
+ @keyframes jkl-blink-u0o409o {
1026
1030
  0% {
1027
1031
  opacity: 1;
1028
1032
  }
@@ -1048,7 +1052,7 @@
1048
1052
  --padding-m: var(--jkl-unit-15);
1049
1053
  --padding-l: var(--jkl-unit-20);
1050
1054
  --padding-xl: var(--jkl-unit-30);
1051
- --border-radius: 0.25rem;
1055
+ --border-radius: var(--jkl-border-radius-m);
1052
1056
  --border-color: transparent;
1053
1057
  --border-width: 0.0625rem;
1054
1058
  --background-color: transparent;
@@ -1242,14 +1246,37 @@
1242
1246
  }
1243
1247
  .jkl-checkbox__input {
1244
1248
  position: absolute;
1245
- opacity: 0;
1246
1249
  inset-block-start: 0;
1247
1250
  inset-inline-start: 0;
1248
1251
  block-size: 1lh;
1249
1252
  inline-size: 1lh;
1250
1253
  margin: 0;
1254
+ padding: 0;
1251
1255
  cursor: pointer;
1252
1256
  z-index: 1;
1257
+ appearance: none;
1258
+ background: transparent;
1259
+ border: 0;
1260
+ }
1261
+ .jkl-checkbox__input {
1262
+ outline: 0;
1263
+ border-style: none;
1264
+ outline-style: none;
1265
+ }
1266
+ .jkl-checkbox__input:active, .jkl-checkbox__input:hover, .jkl-checkbox__input:focus {
1267
+ outline: 0;
1268
+ outline-style: none;
1269
+ }
1270
+ @media screen and (forced-colors: active) {
1271
+ .jkl-checkbox__input {
1272
+ outline: revert;
1273
+ border-style: revert;
1274
+ outline-style: revert;
1275
+ }
1276
+ .jkl-checkbox__input:active, .jkl-checkbox__input:hover, .jkl-checkbox__input:focus {
1277
+ outline: revert;
1278
+ outline-style: revert;
1279
+ }
1253
1280
  }
1254
1281
  .jkl-checkbox__label {
1255
1282
  cursor: pointer;
@@ -1278,6 +1305,10 @@
1278
1305
  transition-duration: 75ms;
1279
1306
  transition-property: font-variation-settings, transform;
1280
1307
  }
1308
+ .jkl-checkbox__input:focus-visible + .jkl-checkbox__label::before {
1309
+ outline: 3px solid var(--jkl-color-border-action);
1310
+ outline-offset: 3px;
1311
+ }
1281
1312
  .jkl-checkbox__input:is(:hover, :active) + .jkl-checkbox__label, .jkl-checkbox__label:hover, .jkl-checkbox__label:active {
1282
1313
  --jkl-icon-weight: 400;
1283
1314
  }
@@ -1388,6 +1419,9 @@
1388
1419
  /* Visuell justering ettersom ikonet ikke fyller bounding box helt */
1389
1420
  margin-inline-start: -0.1em;
1390
1421
  }
1422
+ .jkl-checkbox-panel .jkl-checkbox__input:focus-visible + .jkl-checkbox__label::before {
1423
+ outline: none;
1424
+ }
1391
1425
  }
1392
1426
  .jkl-chip {
1393
1427
  --padding-inline: var(--jkl-unit-15);
@@ -1618,6 +1652,7 @@
1618
1652
  outline: none;
1619
1653
  padding: 0;
1620
1654
  flex: 1 1 1ch;
1655
+ min-width: 0;
1621
1656
  max-height: var(--jkl-combobox-search-input-height);
1622
1657
  background: none;
1623
1658
  -webkit-appearance: none;
@@ -1739,10 +1774,12 @@
1739
1774
  }
1740
1775
  .jkl-combobox__chips {
1741
1776
  display: flex;
1777
+ flex: 1 1 auto;
1742
1778
  flex-wrap: wrap;
1743
1779
  align-items: center;
1744
1780
  gap: var(--jkl-combobox-chips-gap);
1745
- width: 100%;
1781
+ min-width: 0;
1782
+ box-sizing: border-box;
1746
1783
  padding: var(--jkl-text-input-padding);
1747
1784
  }
1748
1785
  .jkl-combobox__chips .jkl-chip {
@@ -2099,10 +2136,10 @@
2099
2136
  }
2100
2137
  }
2101
2138
  .jkl-countdown__tracker {
2102
- animation: jkl-downcount-u5ixh1h var(--duration) linear forwards;
2139
+ animation: jkl-downcount-u0o40ag var(--duration) linear forwards;
2103
2140
  animation-play-state: var(--play-state, running);
2104
2141
  }
2105
- @keyframes jkl-downcount-u5ixh1h {
2142
+ @keyframes jkl-downcount-u0o40ag {
2106
2143
  from {
2107
2144
  width: 100%;
2108
2145
  }
@@ -2392,6 +2429,17 @@
2392
2429
  background-color: var(--jkl-color-background-container-high);
2393
2430
  border-radius: var(--jkl-border-radius-s);
2394
2431
  }
2432
+ .jkl-popover:focus-visible {
2433
+ outline: 3px solid var(--jkl-color-border-action);
2434
+ outline-offset: 3px;
2435
+ }
2436
+ .jkl-popover-trigger:focus {
2437
+ outline: 0;
2438
+ }
2439
+ .jkl-popover-trigger:focus-visible {
2440
+ outline: 3px solid var(--jkl-color-border-action);
2441
+ outline-offset: 3px;
2442
+ }
2395
2443
  }
2396
2444
  @layer jokul.components {
2397
2445
  .jkl-description-list {
@@ -2483,34 +2531,34 @@
2483
2531
  .jkl-expandable__wrapper {
2484
2532
  --border-radius: 0.25rem;
2485
2533
  --outline-offset: 3px;
2534
+ --stroke-outline-offset: 3px;
2535
+ --border-top-left-radius: var(--border-radius);
2536
+ --border-top-right-radius: var(--border-radius);
2537
+ --border-bottom-left-radius: var(--border-radius);
2538
+ --border-bottom-right-radius: var(--border-radius);
2539
+ position: relative;
2540
+ }
2541
+ .jkl-expandable__wrapper + .jkl-expandable__wrapper {
2486
2542
  --border-top-left-radius: 0;
2487
2543
  --border-top-right-radius: 0;
2488
- --border-bottom-left-radius: 0;
2489
- --border-bottom-right-radius: 0;
2490
- position: relative;
2544
+ --stroke-outline-offset: -1px;
2491
2545
  }
2492
2546
  .jkl-expandable__wrapper + .jkl-expandable__wrapper .jkl-expandable--stroke {
2493
2547
  border-top: none;
2494
2548
  }
2495
- .jkl-expandable__wrapper:first-child {
2496
- --border-top-left-radius: var(--border-radius);
2497
- --border-top-right-radius: var(--border-radius);
2498
- }
2499
- .jkl-expandable__wrapper:last-child {
2500
- --border-bottom-left-radius: var(--border-radius);
2501
- --border-bottom-right-radius: var(--border-radius);
2549
+ .jkl-expandable__wrapper:has(+ .jkl-expandable__wrapper) {
2550
+ --border-bottom-left-radius: 0;
2551
+ --border-bottom-right-radius: 0;
2552
+ --stroke-outline-offset: -1px;
2502
2553
  }
2503
2554
  .jkl-expandable__wrapper:has(.jkl-expander:focus-visible):has(.jkl-expandable--stroke) {
2504
- --outline-offset: -1px;
2555
+ --outline-offset: var(--stroke-outline-offset);
2505
2556
  }
2506
2557
  .jkl-expandable__wrapper:has(.jkl-expander:focus-visible) .jkl-expandable__focus-container {
2507
2558
  outline: 3px solid var(--jkl-color-border-action);
2508
2559
  outline-offset: 3px;
2509
2560
  outline-offset: var(--outline-offset);
2510
2561
  }
2511
- .jkl-expandable__wrapper:has(:focus-visible):first-child:last-child {
2512
- --outline-offset: 3px;
2513
- }
2514
2562
  .jkl-expandable__focus-container {
2515
2563
  border-radius: var(--border-radius);
2516
2564
  position: absolute;
@@ -2603,12 +2651,12 @@
2603
2651
  --jkl-icon-size: 1.2em;
2604
2652
  }
2605
2653
  .jkl-feedback__fade-in {
2606
- animation: jkl-show-u5ixh1k 0.25s ease-out;
2654
+ animation: jkl-show-u0o40ao 0.25s ease-out;
2607
2655
  }
2608
2656
  .jkl-feedback__buttons {
2609
2657
  display: flex;
2610
2658
  }
2611
- @keyframes jkl-show-u5ixh1k {
2659
+ @keyframes jkl-show-u0o40ao {
2612
2660
  from {
2613
2661
  transform: translate3d(0, 0.5rem, 0);
2614
2662
  opacity: 0;
@@ -2654,10 +2702,6 @@
2654
2702
  transition-duration: 150ms;
2655
2703
  transition-property: opacity;
2656
2704
  }
2657
- .jkl-feedback-smiley-option::after {
2658
- inset: -0.125rem -0.125rem -0.125rem -0.125rem;
2659
- box-shadow: 0 0 0 0.125rem currentColor;
2660
- }
2661
2705
  .jkl-feedback-smiley-option::before {
2662
2706
  inset: 0;
2663
2707
  box-shadow: 0 0.125rem 1.875rem rgba(0, 0, 0, 0.1);
@@ -2672,8 +2716,10 @@
2672
2716
  input:checked + .jkl-feedback-smiley-option::before {
2673
2717
  opacity: 1;
2674
2718
  }
2675
- html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-feedback-smiley-option::after {
2676
- opacity: 1;
2719
+ input:focus-visible + .jkl-feedback-smiley-option {
2720
+ border-radius: var(--jkl-border-radius-full);
2721
+ outline: 3px solid var(--jkl-color-border-action);
2722
+ outline-offset: 3px;
2677
2723
  }
2678
2724
  }
2679
2725
  @layer jokul.components {
@@ -2825,7 +2871,7 @@
2825
2871
  --background-color: var(--jkl-color-background-alert-success);
2826
2872
  }
2827
2873
  .jkl-message--dismissed {
2828
- animation: jkl-dismiss-u5ixh2h 400ms ease-in-out forwards;
2874
+ animation: jkl-dismiss-u0o40b9 400ms ease-in-out forwards;
2829
2875
  transition: visibility 0ms 400ms;
2830
2876
  visibility: hidden;
2831
2877
  }
@@ -2847,7 +2893,7 @@
2847
2893
  .jkl-form-error-message {
2848
2894
  padding-bottom: calc(var(--jkl-unit-base) * 5);
2849
2895
  }
2850
- @keyframes jkl-dismiss-u5ixh2h {
2896
+ @keyframes jkl-dismiss-u0o40b9 {
2851
2897
  from {
2852
2898
  opacity: 1;
2853
2899
  transform: translate3d(0, 0, 0);
@@ -2901,14 +2947,37 @@
2901
2947
  }
2902
2948
  .jkl-radio-button__input {
2903
2949
  position: absolute;
2904
- opacity: 0;
2905
2950
  inset-block-start: 0;
2906
2951
  inset-inline-start: 0;
2907
2952
  block-size: 1lh;
2908
2953
  inline-size: 1lh;
2909
2954
  margin: 0;
2955
+ padding: 0;
2910
2956
  cursor: pointer;
2911
2957
  z-index: 1;
2958
+ appearance: none;
2959
+ background: transparent;
2960
+ border: 0;
2961
+ }
2962
+ .jkl-radio-button__input {
2963
+ outline: 0;
2964
+ border-style: none;
2965
+ outline-style: none;
2966
+ }
2967
+ .jkl-radio-button__input:active, .jkl-radio-button__input:hover, .jkl-radio-button__input:focus {
2968
+ outline: 0;
2969
+ outline-style: none;
2970
+ }
2971
+ @media screen and (forced-colors: active) {
2972
+ .jkl-radio-button__input {
2973
+ outline: revert;
2974
+ border-style: revert;
2975
+ outline-style: revert;
2976
+ }
2977
+ .jkl-radio-button__input:active, .jkl-radio-button__input:hover, .jkl-radio-button__input:focus {
2978
+ outline: revert;
2979
+ outline-style: revert;
2980
+ }
2912
2981
  }
2913
2982
  .jkl-radio-button__label {
2914
2983
  cursor: pointer;
@@ -2937,6 +3006,11 @@
2937
3006
  transition-duration: 75ms;
2938
3007
  transition-property: font-variation-settings, transform;
2939
3008
  }
3009
+ .jkl-radio-button__input:focus-visible + .jkl-radio-button__label::before {
3010
+ border-radius: var(--jkl-border-radius-full);
3011
+ outline: 3px solid var(--jkl-color-border-action);
3012
+ outline-offset: 3px;
3013
+ }
2940
3014
  .jkl-radio-button__input:is(:hover, :active) + .jkl-radio-button__label, .jkl-radio-button__label:hover, .jkl-radio-button__label:active {
2941
3015
  --jkl-icon-weight: 400;
2942
3016
  }
@@ -3506,7 +3580,6 @@
3506
3580
  margin: 0;
3507
3581
  height: min-content;
3508
3582
  border-radius: var(--jkl-unit-05);
3509
- overflow: hidden;
3510
3583
  background: var(--jkl-color-background-container-low);
3511
3584
  }
3512
3585
  .jkl-link-list ul .jkl-link-list-link {
@@ -3552,6 +3625,10 @@
3552
3625
  .jkl-link-list ul .jkl-link-list-link:is(:hover, :focus-visible)::after {
3553
3626
  translate: 4px 0;
3554
3627
  }
3628
+ .jkl-link-list ul .jkl-link-list-link:focus-visible {
3629
+ outline: 3px solid var(--jkl-color-border-action);
3630
+ outline-offset: 3px;
3631
+ }
3555
3632
  .jkl-link-list .jkl-link-list-item {
3556
3633
  display: flex;
3557
3634
  }
@@ -4195,12 +4272,36 @@
4195
4272
  background-color: CanvasText;
4196
4273
  }
4197
4274
  }
4275
+ .jkl-progress-bar {
4276
+ outline: 0;
4277
+ border-style: none;
4278
+ outline-style: none;
4279
+ }
4280
+ .jkl-progress-bar:active, .jkl-progress-bar:hover, .jkl-progress-bar:focus {
4281
+ outline: 0;
4282
+ outline-style: none;
4283
+ }
4284
+ @media screen and (forced-colors: active) {
4285
+ .jkl-progress-bar {
4286
+ outline: revert;
4287
+ border-style: revert;
4288
+ outline-style: revert;
4289
+ }
4290
+ .jkl-progress-bar:active, .jkl-progress-bar:hover, .jkl-progress-bar:focus {
4291
+ outline: revert;
4292
+ outline-style: revert;
4293
+ }
4294
+ }
4295
+ .jkl-progress-bar:focus-visible {
4296
+ outline: 3px solid var(--jkl-color-border-action);
4297
+ outline-offset: 3px;
4298
+ }
4198
4299
  .jkl-progress-bar__tracker {
4199
4300
  transition-property: width;
4200
4301
  transition-timing-function: ease;
4201
4302
  transition-duration: 150ms;
4202
4303
  }
4203
- @keyframes jkl-downcount-u5ixh3f {
4304
+ @keyframes jkl-downcount-u0o40c3 {
4204
4305
  from {
4205
4306
  width: 100%;
4206
4307
  }
@@ -4214,6 +4315,9 @@
4214
4315
  /* Visuell justering pga. rundt ikon */
4215
4316
  margin-inline-start: -0.15em;
4216
4317
  }
4318
+ .jkl-radio-panel .jkl-radio-button__input:focus-visible + .jkl-radio-button__label::before {
4319
+ outline: none;
4320
+ }
4217
4321
  }
4218
4322
  .jkl-select--beta {
4219
4323
  --border-color: var(--jkl-color-border-input);
@@ -4710,7 +4814,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-select--beta s
4710
4814
  margin-bottom: 0;
4711
4815
  }
4712
4816
  .jkl-system-message--dismissed {
4713
- animation: jkl-dismiss-u5ixh4w 400ms forwards;
4817
+ animation: jkl-dismiss-u0o40dq 400ms forwards;
4714
4818
  transition: block 400ms 400ms;
4715
4819
  }
4716
4820
  .jkl-system-message--info {
@@ -4740,7 +4844,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-select--beta s
4740
4844
  border-width: 4px;
4741
4845
  }
4742
4846
  }
4743
- @keyframes jkl-dismiss-u5ixh4w {
4847
+ @keyframes jkl-dismiss-u0o40dq {
4744
4848
  from {
4745
4849
  opacity: 1;
4746
4850
  transform: translateY(0);
@@ -5577,12 +5681,12 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-select--beta s
5577
5681
  }
5578
5682
  .jkl-toast[data-animation=entering],
5579
5683
  .jkl-toast[data-animation=queued] {
5580
- animation: jkl-entering-u5ixh4y 200ms ease-out forwards;
5684
+ animation: jkl-entering-u0o40ee 200ms ease-out forwards;
5581
5685
  }
5582
5686
  .jkl-toast[data-animation=exiting] {
5583
- animation: jkl-exiting-u5ixh5i 150ms ease-in forwards;
5687
+ animation: jkl-exiting-u0o40f9 150ms ease-in forwards;
5584
5688
  }
5585
- @keyframes jkl-entering-u5ixh4y {
5689
+ @keyframes jkl-entering-u0o40ee {
5586
5690
  from {
5587
5691
  opacity: 0;
5588
5692
  transform: translate3d(0, 50%, 0);
@@ -5592,7 +5696,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-select--beta s
5592
5696
  transform: translate3d(0, 0, 0);
5593
5697
  }
5594
5698
  }
5595
- @keyframes jkl-exiting-u5ixh5i {
5699
+ @keyframes jkl-exiting-u0o40f9 {
5596
5700
  from {
5597
5701
  opacity: 1;
5598
5702
  transform: translate3d(0, 0, 0);
@@ -7056,7 +7160,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-toggle-slider:
7056
7160
  --jkl-toggle-switch-width: var(--jkl-unit-60);
7057
7161
  --jkl-toggle-switch-knob-size: var(--jkl-unit-30);
7058
7162
  --border-width: 0.0625rem;
7059
- --switch-padding: 0.25rem;
7163
+ --switch-padding: var(--jkl-unit-05);
7060
7164
  --knob-position: 0;
7061
7165
  --switch-border-color: var(--jkl-color-border-action);
7062
7166
  --indicator-color: var(--jkl-color-background-container-high);
@@ -7129,7 +7233,6 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-toggle-slider:
7129
7233
  --jkl-toggle-switch-height: var(--jkl-unit-40);
7130
7234
  --jkl-toggle-switch-width: var(--jkl-unit-60);
7131
7235
  --jkl-toggle-switch-knob-size: var(--jkl-unit-30);
7132
- --jkl-toggle-switch-indicator-spacing: 0;
7133
7236
  position: relative;
7134
7237
  box-sizing: border-box;
7135
7238
  display: flex;
@@ -7177,13 +7280,9 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-toggle-slider:
7177
7280
  position: absolute;
7178
7281
  top: 50%;
7179
7282
  right: 100%;
7180
- margin-right: var(--jkl-toggle-switch-indicator-spacing);
7283
+ font-size: var(--jkl-unit-20);
7181
7284
  transform: translate(0, -50%);
7182
7285
  }
7183
- .jkl-toggle-switch-widget__indicator > .jkl-icon__icon {
7184
- position: absolute;
7185
- inset: 0;
7186
- }
7187
7286
 
7188
7287
  @layer jokul.components {
7189
7288
  .jkl-help {