@fremtind/jokul 0.37.9 → 0.37.11

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 (133) hide show
  1. package/build/build-stats.html +1 -1
  2. package/build/cjs/components/accordion/AccordionItem.cjs +1 -1
  3. package/build/cjs/components/accordion/AccordionItem.cjs.map +1 -1
  4. package/build/cjs/components/button/Button.cjs +1 -1
  5. package/build/cjs/components/button/Button.cjs.map +1 -1
  6. package/build/cjs/components/expander/ExpandablePanel.cjs +1 -1
  7. package/build/cjs/components/expander/ExpandablePanel.cjs.map +1 -1
  8. package/build/cjs/components/expander/ExpandablePanelContent.cjs +1 -1
  9. package/build/cjs/components/expander/ExpandablePanelContent.cjs.map +1 -1
  10. package/build/cjs/components/expander/Expander.cjs +1 -1
  11. package/build/cjs/components/expander/Expander.cjs.map +1 -1
  12. package/build/cjs/components/expander/context.cjs +1 -1
  13. package/build/cjs/components/expander/context.cjs.map +1 -1
  14. package/build/cjs/components/expander/types.d.cts +1 -0
  15. package/build/cjs/components/message/Message.cjs +1 -1
  16. package/build/cjs/components/message/Message.cjs.map +1 -1
  17. package/build/cjs/components/system-message/SystemMessage.cjs +1 -1
  18. package/build/cjs/components/system-message/SystemMessage.cjs.map +1 -1
  19. package/build/cjs/components/text-input/BaseTextInput.cjs +1 -1
  20. package/build/cjs/components/text-input/BaseTextInput.cjs.map +1 -1
  21. package/build/cjs/components/text-input/BaseTextInput.d.cts +1 -1
  22. package/build/cjs/components/toast/Toast.cjs +1 -1
  23. package/build/cjs/components/toast/Toast.cjs.map +1 -1
  24. package/build/es/components/accordion/AccordionItem.js +1 -1
  25. package/build/es/components/accordion/AccordionItem.js.map +1 -1
  26. package/build/es/components/button/Button.js +1 -1
  27. package/build/es/components/button/Button.js.map +1 -1
  28. package/build/es/components/expander/ExpandablePanel.js +1 -1
  29. package/build/es/components/expander/ExpandablePanel.js.map +1 -1
  30. package/build/es/components/expander/ExpandablePanelContent.js +1 -1
  31. package/build/es/components/expander/ExpandablePanelContent.js.map +1 -1
  32. package/build/es/components/expander/Expander.js +1 -1
  33. package/build/es/components/expander/Expander.js.map +1 -1
  34. package/build/es/components/expander/context.js +1 -1
  35. package/build/es/components/expander/context.js.map +1 -1
  36. package/build/es/components/expander/types.d.ts +1 -0
  37. package/build/es/components/message/Message.js +1 -1
  38. package/build/es/components/message/Message.js.map +1 -1
  39. package/build/es/components/system-message/SystemMessage.js +1 -1
  40. package/build/es/components/system-message/SystemMessage.js.map +1 -1
  41. package/build/es/components/text-input/BaseTextInput.d.ts +1 -1
  42. package/build/es/components/text-input/BaseTextInput.js +1 -1
  43. package/build/es/components/text-input/BaseTextInput.js.map +1 -1
  44. package/build/es/components/toast/Toast.js +1 -1
  45. package/build/es/components/toast/Toast.js.map +1 -1
  46. package/package.json +2 -2
  47. package/styles/components/accordion/accordion.css +7 -1
  48. package/styles/components/accordion/accordion.min.css +2 -2
  49. package/styles/components/accordion/accordion.scss +6 -0
  50. package/styles/components/breadcrumb/breadcrumb.css +4 -0
  51. package/styles/components/breadcrumb/breadcrumb.min.css +1 -1
  52. package/styles/components/breadcrumb/breadcrumb.scss +4 -0
  53. package/styles/components/button/button.css +4 -4
  54. package/styles/components/button/button.min.css +1 -1
  55. package/styles/components/card/card.css +2 -2
  56. package/styles/components/card/card.min.css +1 -1
  57. package/styles/components/checkbox/checkbox.css +9 -10
  58. package/styles/components/checkbox/checkbox.min.css +1 -1
  59. package/styles/components/checkbox/checkbox.scss +4 -9
  60. package/styles/components/chip/chip.css +2 -2
  61. package/styles/components/chip/chip.min.css +1 -1
  62. package/styles/components/combobox/combobox.css +9 -14
  63. package/styles/components/combobox/combobox.min.css +1 -1
  64. package/styles/components/combobox/combobox.scss +12 -18
  65. package/styles/components/datepicker/_calendar-date-button.scss +4 -7
  66. package/styles/components/datepicker/_calendar-navigation-dropdown.scss +2 -5
  67. package/styles/components/datepicker/_calendar-navigation.scss +3 -6
  68. package/styles/components/datepicker/_calendar.scss +2 -16
  69. package/styles/components/datepicker/datepicker.css +14 -46
  70. package/styles/components/datepicker/datepicker.min.css +1 -1
  71. package/styles/components/expander/deprecated/expander.css +2 -2
  72. package/styles/components/expander/deprecated/expander.min.css +1 -1
  73. package/styles/components/expander/expandable.css +49 -12
  74. package/styles/components/expander/expandable.min.css +1 -1
  75. package/styles/components/expander/expandable.scss +39 -11
  76. package/styles/components/feedback/feedback.css +2 -2
  77. package/styles/components/feedback/feedback.min.css +1 -1
  78. package/styles/components/file-input/_file.scss +10 -4
  79. package/styles/components/file-input/file-input.css +31 -7
  80. package/styles/components/file-input/file-input.min.css +1 -1
  81. package/styles/components/file-input/file-input.scss +1 -2
  82. package/styles/components/icon-button/icon-button.css +7 -39
  83. package/styles/components/icon-button/icon-button.min.css +1 -1
  84. package/styles/components/icon-button/icon-button.scss +6 -23
  85. package/styles/components/input-group/input-group.css +2 -2
  86. package/styles/components/input-group/input-group.min.css +1 -1
  87. package/styles/components/input-panel/checkbox-panel.css +10 -8
  88. package/styles/components/input-panel/checkbox-panel.min.css +1 -1
  89. package/styles/components/input-panel/radio-panel.css +10 -8
  90. package/styles/components/input-panel/radio-panel.min.css +1 -1
  91. package/styles/components/input-panel/shared.css +8 -6
  92. package/styles/components/input-panel/shared.min.css +1 -1
  93. package/styles/components/input-panel/shared.scss +9 -7
  94. package/styles/components/link/link.css +4 -5
  95. package/styles/components/link/link.min.css +1 -1
  96. package/styles/components/link/link.scss +2 -3
  97. package/styles/components/link-list/link-list.css +1 -1
  98. package/styles/components/link-list/link-list.min.css +1 -1
  99. package/styles/components/link-list/link-list.scss +1 -1
  100. package/styles/components/loader/loader.css +6 -6
  101. package/styles/components/loader/loader.min.css +1 -1
  102. package/styles/components/loader/skeleton-loader.css +5 -5
  103. package/styles/components/loader/skeleton-loader.min.css +1 -1
  104. package/styles/components/message/message.css +12 -10
  105. package/styles/components/message/message.min.css +1 -1
  106. package/styles/components/message/message.scss +10 -8
  107. package/styles/components/pagination/pagination.css +2 -2
  108. package/styles/components/pagination/pagination.min.css +1 -1
  109. package/styles/components/pagination/pagination.scss +1 -1
  110. package/styles/components/progress-bar/progress-bar.css +2 -2
  111. package/styles/components/progress-bar/progress-bar.min.css +1 -1
  112. package/styles/components/radio-button/radio-button.css +4 -4
  113. package/styles/components/radio-button/radio-button.min.css +1 -1
  114. package/styles/components/select/select.css +7 -5
  115. package/styles/components/select/select.min.css +1 -1
  116. package/styles/components/select/select.scss +6 -5
  117. package/styles/components/system-message/system-message.css +21 -14
  118. package/styles/components/system-message/system-message.min.css +1 -1
  119. package/styles/components/system-message/system-message.scss +22 -18
  120. package/styles/components/tabs/tabs.css +1 -1
  121. package/styles/components/tabs/tabs.min.css +1 -1
  122. package/styles/components/text-input/text-input.css +45 -53
  123. package/styles/components/text-input/text-input.min.css +1 -1
  124. package/styles/components/text-input/text-input.scss +50 -65
  125. package/styles/components/toast/toast.css +4 -4
  126. package/styles/components/toast/toast.min.css +1 -1
  127. package/styles/components/toggle-switch/toggle-switch.css +2 -2
  128. package/styles/components/toggle-switch/toggle-switch.min.css +1 -1
  129. package/styles/components/tooltip/tooltip.css +1 -1
  130. package/styles/components/tooltip/tooltip.min.css +1 -1
  131. package/styles/core/jkl/_ornaments.scss +1 -1
  132. package/styles/styles.css +242 -261
  133. package/styles/styles.min.css +2 -2
@@ -40,13 +40,13 @@
40
40
  .jkl-system-message__content {
41
41
  box-sizing: border-box;
42
42
  padding: var(--jkl-system-message-content-padding);
43
- display: flex;
43
+ display: grid;
44
+ grid-template-columns: min-content 1fr min-content;
44
45
  align-items: flex-start;
45
46
  width: 100%;
46
47
  margin: 0 auto;
47
48
  }
48
49
  .jkl-system-message__icon {
49
- align-self: flex-start;
50
50
  height: var(--jkl-system-message-icon-height);
51
51
  margin: var(--jkl-system-message-icon-padding);
52
52
  flex-shrink: 0;
@@ -69,15 +69,22 @@
69
69
  background-color: transparent;
70
70
  padding: 0;
71
71
  cursor: pointer;
72
- display: flex;
73
- align-items: center;
74
- justify-content: center;
75
- align-self: flex-start;
72
+ display: grid;
73
+ place-content: center;
74
+ position: relative;
76
75
  flex-shrink: 0;
76
+ margin-top: 0.1875rem;
77
+ color: inherit;
78
+ }
79
+ .jkl-system-message__dismiss-button::after {
80
+ content: "";
81
+ position: absolute;
82
+ display: block;
77
83
  width: var(--jkl-system-message-dismiss-button-size);
78
84
  height: var(--jkl-system-message-dismiss-button-size);
79
- margin: var(--jkl-system-message-dismiss-button-margin);
80
- color: inherit;
85
+ top: 50%;
86
+ left: 50%;
87
+ transform: translate(-50%, -50%);
81
88
  }
82
89
  @media screen and (forced-colors: active) {
83
90
  .jkl-system-message__dismiss-button {
@@ -123,21 +130,21 @@
123
130
  stroke: ButtonText;
124
131
  }
125
132
  }
126
- html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-system-message__dismiss-button:focus {
127
- outline: 2px solid #1b1917;
133
+ .jkl-system-message__dismiss-button:focus-visible {
134
+ outline: 3px solid var(--jkl-color-border-action);
135
+ outline-offset: 3px;
128
136
  }
129
137
  @media screen and (forced-colors: active) {
130
- html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-system-message__dismiss-button:focus {
138
+ .jkl-system-message__dismiss-button:focus-visible {
131
139
  outline: 2px solid ButtonText;
132
140
  outline-offset: 2px;
133
141
  }
134
142
  }
135
-
136
143
  .jkl-system-message__message, .jkl-system-message__message:last-child {
137
144
  margin-bottom: 0;
138
145
  }
139
146
  .jkl-system-message--dismissed {
140
- animation: jkl-dismiss-us428ur 400ms ease-in forwards;
147
+ animation: jkl-dismiss-u5mgpsa 400ms ease-in forwards;
141
148
  transition: visibility 0ms 400ms;
142
149
  visibility: hidden;
143
150
  }
@@ -169,7 +176,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-system-message
169
176
  }
170
177
  }
171
178
 
172
- @keyframes jkl-dismiss-us428ur {
179
+ @keyframes jkl-dismiss-u5mgpsa {
173
180
  from {
174
181
  opacity: 1;
175
182
  transform: translate3d(0, 0, 0);
@@ -1 +1 @@
1
- :root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-system-message-icon-height:1.5rem;--jkl-system-message-icon-padding:0.1875rem 0 0 0;--jkl-system-message-content-padding:1.5rem;--jkl-system-message-dismiss-button-size:2.75rem;--jkl-system-message-dismiss-button-margin:-0.40625rem -1.125rem -0.40625rem auto;--jkl-system-message-message-margin:0 1rem;--jkl-system-message-message-font-size:var(--jkl-body-font-size);--jkl-system-message-message-line-height:var(--jkl-body-line-height);--jkl-system-message-message-font-weight:var(--jkl-body-font-weight)}[data-density=compact],[data-layout-density=compact]{--jkl-system-message-icon-height:1.25rem;--jkl-system-message-icon-padding:0.0625rem 0 0 0;--jkl-system-message-content-padding:0.5rem;--jkl-system-message-dismiss-button-size:2rem;--jkl-system-message-dismiss-button-margin:-0.1875rem -0.375rem -0.28125rem auto;--jkl-system-message-message-margin:0 0.75rem;--jkl-system-message-message-font-size:var(--jkl-small-font-size);--jkl-system-message-message-line-height:var(--jkl-small-line-height);--jkl-system-message-message-font-weight:var(--jkl-small-font-weight)}.jkl-system-message{--background-color:var(--jkl-color-background-alert-neutral);--text-color:var(--jkl-color-text-on-alert);background-color:var(--background-color);box-sizing:border-box;color:var(--text-color);width:100%}.jkl-system-message__content{align-items:flex-start;box-sizing:border-box;display:flex;margin:0 auto;padding:var(--jkl-system-message-content-padding);width:100%}.jkl-system-message__icon{align-self:flex-start;flex-shrink:0;height:var(--jkl-system-message-icon-height);margin:var(--jkl-system-message-icon-padding)}@media screen and (forced-colors:active){.jkl-system-message__icon,.jkl-system-message__icon path,.jkl-system-message__icon svg{stroke:CanvasText}}.jkl-system-message__message{font-size:var(--jkl-system-message-message-font-size);font-weight:var(--jkl-system-message-message-font-weight);line-height:var(--jkl-system-message-message-line-height);margin:var(--jkl-system-message-message-margin)}.jkl-system-message__dismiss-button{align-items:center;align-self:flex-start;background-color:transparent;color:inherit;cursor:pointer;display:flex;flex-shrink:0;height:var(--jkl-system-message-dismiss-button-size);justify-content:center;margin:var(--jkl-system-message-dismiss-button-margin);padding:0;width:var(--jkl-system-message-dismiss-button-size)}@media screen and (forced-colors:active){.jkl-system-message__dismiss-button,.jkl-system-message__dismiss-button path,.jkl-system-message__dismiss-button svg{stroke:ButtonText}.jkl-system-message__dismiss-button{background-color:ButtonFace}}.jkl-system-message__dismiss-button{border-style:none;outline:0;outline-style:none}.jkl-system-message__dismiss-button:active,.jkl-system-message__dismiss-button:focus,.jkl-system-message__dismiss-button:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-system-message__dismiss-button{border-style:revert;outline:revert;outline-style:revert}.jkl-system-message__dismiss-button:active,.jkl-system-message__dismiss-button:focus,.jkl-system-message__dismiss-button:hover{outline:revert;outline-style:revert}}.jkl-system-message__dismiss-button:hover{color:#636060}@media screen and (forced-colors:active){.jkl-system-message__dismiss-button:hover{stroke:ButtonText}.jkl-system-message__dismiss-button:hover path,.jkl-system-message__dismiss-button:hover svg{stroke:ButtonText}}html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-system-message__dismiss-button:focus{outline:2px solid #1b1917}@media screen and (forced-colors:active){html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-system-message__dismiss-button:focus{outline:2px solid ButtonText;outline-offset:2px}}.jkl-system-message__message,.jkl-system-message__message:last-child{margin-bottom:0}.jkl-system-message--dismissed{animation:jkl-dismiss-us428ur .4s ease-in forwards;transition:visibility 0s .4s;visibility:hidden}.jkl-system-message--info{--background-color:var(--jkl-color-background-alert-info)}.jkl-system-message--warning{--background-color:var(--jkl-color-background-alert-warning)}.jkl-system-message--error{--background-color:var(--jkl-color-background-alert-error)}.jkl-system-message--success{--background-color:var(--jkl-color-background-alert-success)}@media screen and (forced-colors:active){.jkl-system-message{border:2px solid CanvasText}.jkl-system-message--info{border-style:dotted}.jkl-system-message--warning{border-style:dashed}.jkl-system-message--error{border-style:double;border-width:4px}}@keyframes jkl-dismiss-us428ur{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-50%,0)}}
1
+ :root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-system-message-icon-height:1.5rem;--jkl-system-message-icon-padding:0.1875rem 0 0 0;--jkl-system-message-content-padding:1.5rem;--jkl-system-message-dismiss-button-size:2.75rem;--jkl-system-message-dismiss-button-margin:-0.40625rem -1.125rem -0.40625rem auto;--jkl-system-message-message-margin:0 1rem;--jkl-system-message-message-font-size:var(--jkl-body-font-size);--jkl-system-message-message-line-height:var(--jkl-body-line-height);--jkl-system-message-message-font-weight:var(--jkl-body-font-weight)}[data-density=compact],[data-layout-density=compact]{--jkl-system-message-icon-height:1.25rem;--jkl-system-message-icon-padding:0.0625rem 0 0 0;--jkl-system-message-content-padding:0.5rem;--jkl-system-message-dismiss-button-size:2rem;--jkl-system-message-dismiss-button-margin:-0.1875rem -0.375rem -0.28125rem auto;--jkl-system-message-message-margin:0 0.75rem;--jkl-system-message-message-font-size:var(--jkl-small-font-size);--jkl-system-message-message-line-height:var(--jkl-small-line-height);--jkl-system-message-message-font-weight:var(--jkl-small-font-weight)}.jkl-system-message{--background-color:var(--jkl-color-background-alert-neutral);--text-color:var(--jkl-color-text-on-alert);background-color:var(--background-color);box-sizing:border-box;color:var(--text-color);width:100%}.jkl-system-message__content{align-items:flex-start;box-sizing:border-box;display:grid;grid-template-columns:-webkit-min-content 1fr -webkit-min-content;grid-template-columns:min-content 1fr min-content;margin:0 auto;padding:var(--jkl-system-message-content-padding);width:100%}.jkl-system-message__icon{flex-shrink:0;height:var(--jkl-system-message-icon-height);margin:var(--jkl-system-message-icon-padding)}@media screen and (forced-colors:active){.jkl-system-message__icon,.jkl-system-message__icon path,.jkl-system-message__icon svg{stroke:CanvasText}}.jkl-system-message__message{font-size:var(--jkl-system-message-message-font-size);font-weight:var(--jkl-system-message-message-font-weight);line-height:var(--jkl-system-message-message-line-height);margin:var(--jkl-system-message-message-margin)}.jkl-system-message__dismiss-button{background-color:transparent;color:inherit;cursor:pointer;display:grid;flex-shrink:0;margin-top:.1875rem;padding:0;place-content:center;position:relative}.jkl-system-message__dismiss-button:after{content:"";display:block;height:var(--jkl-system-message-dismiss-button-size);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--jkl-system-message-dismiss-button-size)}@media screen and (forced-colors:active){.jkl-system-message__dismiss-button,.jkl-system-message__dismiss-button path,.jkl-system-message__dismiss-button svg{stroke:ButtonText}.jkl-system-message__dismiss-button{background-color:ButtonFace}}.jkl-system-message__dismiss-button{border-style:none;outline:0;outline-style:none}.jkl-system-message__dismiss-button:active,.jkl-system-message__dismiss-button:focus,.jkl-system-message__dismiss-button:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-system-message__dismiss-button{border-style:revert;outline:revert;outline-style:revert}.jkl-system-message__dismiss-button:active,.jkl-system-message__dismiss-button:focus,.jkl-system-message__dismiss-button:hover{outline:revert;outline-style:revert}}.jkl-system-message__dismiss-button:hover{color:#636060}@media screen and (forced-colors:active){.jkl-system-message__dismiss-button:hover{stroke:ButtonText}.jkl-system-message__dismiss-button:hover path,.jkl-system-message__dismiss-button:hover svg{stroke:ButtonText}}.jkl-system-message__dismiss-button:focus-visible{outline:3px solid var(--jkl-color-border-action);outline-offset:3px}@media screen and (forced-colors:active){.jkl-system-message__dismiss-button:focus-visible{outline:2px solid ButtonText;outline-offset:2px}}.jkl-system-message__message,.jkl-system-message__message:last-child{margin-bottom:0}.jkl-system-message--dismissed{animation:jkl-dismiss-u5mgpsa .4s ease-in forwards;transition:visibility 0s .4s;visibility:hidden}.jkl-system-message--info{--background-color:var(--jkl-color-background-alert-info)}.jkl-system-message--warning{--background-color:var(--jkl-color-background-alert-warning)}.jkl-system-message--error{--background-color:var(--jkl-color-background-alert-error)}.jkl-system-message--success{--background-color:var(--jkl-color-background-alert-success)}@media screen and (forced-colors:active){.jkl-system-message{border:2px solid CanvasText}.jkl-system-message--info{border-style:dotted}.jkl-system-message--warning{border-style:dashed}.jkl-system-message--error{border-style:double;border-width:4px}}@keyframes jkl-dismiss-u5mgpsa{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-50%,0)}}
@@ -5,7 +5,6 @@
5
5
 
6
6
  $_dismiss-animation-name: jkl-dismiss-#{string.unique-id()};
7
7
  $_dismiss-animation-duration: jkl.timing("lazy");
8
- $_dismiss-focus-border-color: jkl.$color-granitt;
9
8
  $_dismiss-hover-color: jkl.$color-stein;
10
9
 
11
10
  @include jkl.comfortable-density-variables {
@@ -44,14 +43,14 @@ $_dismiss-hover-color: jkl.$color-stein;
44
43
  &__content {
45
44
  box-sizing: border-box;
46
45
  padding: var(--jkl-system-message-content-padding);
47
- display: flex;
46
+ display: grid;
47
+ grid-template-columns: min-content 1fr min-content;
48
48
  align-items: flex-start;
49
49
  width: 100%;
50
50
  margin: 0 auto;
51
51
  }
52
52
 
53
53
  &__icon {
54
- align-self: flex-start;
55
54
  height: var(--jkl-system-message-icon-height);
56
55
  margin: var(--jkl-system-message-icon-padding);
57
56
  flex-shrink: 0;
@@ -68,18 +67,25 @@ $_dismiss-hover-color: jkl.$color-stein;
68
67
  background-color: transparent;
69
68
  padding: 0;
70
69
  cursor: pointer;
71
- display: flex;
72
- align-items: center;
73
- justify-content: center;
74
- align-self: flex-start;
70
+ display: grid;
71
+ place-content: center;
72
+ position: relative;
75
73
  flex-shrink: 0;
74
+ margin-top: jkl.rem(3px); // visual alignment with text
75
+ color: inherit;
76
76
 
77
77
  // Sørg for å ha en stor nok touch target.
78
- width: var(--jkl-system-message-dismiss-button-size);
79
- height: var(--jkl-system-message-dismiss-button-size);
80
- margin: var(--jkl-system-message-dismiss-button-margin);
78
+ &::after {
79
+ content: "";
80
+ position: absolute;
81
+ display: block;
82
+ width: var(--jkl-system-message-dismiss-button-size);
83
+ height: var(--jkl-system-message-dismiss-button-size);
84
+ top: 50%;
85
+ left: 50%;
86
+ transform: translate(-50%, -50%);
87
+ }
81
88
 
82
- color: inherit;
83
89
  @include jkl.forced-colors-svg-fallback($stroke: ButtonText);
84
90
  @include jkl.forced-colors-mode {
85
91
  background-color: ButtonFace;
@@ -92,14 +98,12 @@ $_dismiss-hover-color: jkl.$color-stein;
92
98
  @include jkl.forced-colors-svg-fallback($stroke: ButtonText);
93
99
  }
94
100
 
95
- &:focus {
96
- @include jkl.keyboard-navigation {
97
- outline: 2px solid $_dismiss-focus-border-color;
101
+ &:focus-visible {
102
+ @include jkl.focus-outline;
98
103
 
99
- @include jkl.forced-colors-mode {
100
- outline: 2px solid ButtonText;
101
- outline-offset: 2px;
102
- }
104
+ @include jkl.forced-colors-mode {
105
+ outline: 2px solid ButtonText;
106
+ outline-offset: 2px;
103
107
  }
104
108
  }
105
109
  }
@@ -111,7 +111,7 @@
111
111
  --text-color: var(--jkl-color-text-interactive-hover);
112
112
  }
113
113
  .jkl-tab:focus-visible {
114
- outline: 2px solid var(--jkl-color-border-action);
114
+ outline: 3px solid var(--jkl-color-border-action);
115
115
  outline-offset: -2px;
116
116
  }
117
117
  .jkl-tab[aria-selected=true] {
@@ -1 +1 @@
1
- :root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-tab-padding:var(--jkl-spacing-8) var(--jkl-spacing-40) var(--jkl-spacing-12) var(--jkl-spacing-2);--jkl-tab-font-size:var(--jkl-body-font-size);--jkl-tab-line-height:var(--jkl-body-line-height);--jkl-tab-font-weight:var(--jkl-body-font-weight)}@media (width >= 0) and (max-width:679px){:root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-tab-padding:var(--jkl-spacing-8) var(--jkl-spacing-24) var(--jkl-spacing-12) var(--jkl-spacing-2)}}[data-density=compact],[data-layout-density=compact]{--jkl-tab-font-size:var(--jkl-small-font-size);--jkl-tab-line-height:var(--jkl-small-line-height);--jkl-tab-font-weight:var(--jkl-small-font-weight);--jkl-tab-padding:var(--jkl-spacing-2) var(--jkl-spacing-32) var(--jkl-spacing-4) 0}.jkl-tabs{overflow-x:scroll;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none}.jkl-tabs::-webkit-scrollbar{display:none}.jkl-tablist{--text-color:var(--jkl-color-text-interactive);--line-color:var(--jkl-color-border-separator);--indicator-color:var(--jkl-color-border-separator-hover);border-bottom:1px solid var(--line-color);display:inline-flex;flex-direction:row;margin:0;min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content;padding:0;position:relative;width:100%}.jkl-tablist__indicator{background-color:var(--indicator-color);height:2px;position:absolute;transition-duration:.4s;transition-property:left,width;transition-timing-function:ease;will-change:left,width}@media screen and (forced-colors:active){.jkl-tablist__indicator{background-color:Highlight}.jkl-tablist{border-color:GrayText}}.jkl-tab{background-color:transparent;border:none;border-style:none;color:var(--text-color);cursor:pointer;font-size:var(--jkl-tab-font-size);font-weight:var(--jkl-tab-font-weight);line-height:var(--jkl-tab-line-height);outline:0;outline-style:none;padding:var(--jkl-tab-padding);position:relative;scroll-margin-inline-start:var(--jkl-spacing-16);scroll-snap-align:start;text-decoration:none;white-space:nowrap}.jkl-tab:active,.jkl-tab:focus,.jkl-tab:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-tab{border-style:revert;outline:revert;outline-style:revert}.jkl-tab:active,.jkl-tab:focus,.jkl-tab:hover{outline:revert;outline-style:revert}}.jkl-tab:hover{--text-color:var(--jkl-color-text-interactive-hover)}.jkl-tab:focus-visible{outline:2px solid var(--jkl-color-border-action);outline-offset:-2px}.jkl-tab[aria-selected=true]{--jkl-icon-weight:500;font-weight:700;letter-spacing:-.014em}
1
+ :root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-tab-padding:var(--jkl-spacing-8) var(--jkl-spacing-40) var(--jkl-spacing-12) var(--jkl-spacing-2);--jkl-tab-font-size:var(--jkl-body-font-size);--jkl-tab-line-height:var(--jkl-body-line-height);--jkl-tab-font-weight:var(--jkl-body-font-weight)}@media (width >= 0) and (max-width:679px){:root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-tab-padding:var(--jkl-spacing-8) var(--jkl-spacing-24) var(--jkl-spacing-12) var(--jkl-spacing-2)}}[data-density=compact],[data-layout-density=compact]{--jkl-tab-font-size:var(--jkl-small-font-size);--jkl-tab-line-height:var(--jkl-small-line-height);--jkl-tab-font-weight:var(--jkl-small-font-weight);--jkl-tab-padding:var(--jkl-spacing-2) var(--jkl-spacing-32) var(--jkl-spacing-4) 0}.jkl-tabs{overflow-x:scroll;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none}.jkl-tabs::-webkit-scrollbar{display:none}.jkl-tablist{--text-color:var(--jkl-color-text-interactive);--line-color:var(--jkl-color-border-separator);--indicator-color:var(--jkl-color-border-separator-hover);border-bottom:1px solid var(--line-color);display:inline-flex;flex-direction:row;margin:0;min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content;padding:0;position:relative;width:100%}.jkl-tablist__indicator{background-color:var(--indicator-color);height:2px;position:absolute;transition-duration:.4s;transition-property:left,width;transition-timing-function:ease;will-change:left,width}@media screen and (forced-colors:active){.jkl-tablist__indicator{background-color:Highlight}.jkl-tablist{border-color:GrayText}}.jkl-tab{background-color:transparent;border:none;border-style:none;color:var(--text-color);cursor:pointer;font-size:var(--jkl-tab-font-size);font-weight:var(--jkl-tab-font-weight);line-height:var(--jkl-tab-line-height);outline:0;outline-style:none;padding:var(--jkl-tab-padding);position:relative;scroll-margin-inline-start:var(--jkl-spacing-16);scroll-snap-align:start;text-decoration:none;white-space:nowrap}.jkl-tab:active,.jkl-tab:focus,.jkl-tab:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-tab{border-style:revert;outline:revert;outline-style:revert}.jkl-tab:active,.jkl-tab:focus,.jkl-tab:hover{outline:revert;outline-style:revert}}.jkl-tab:hover{--text-color:var(--jkl-color-text-interactive-hover)}.jkl-tab:focus-visible{outline:3px solid var(--jkl-color-border-action);outline-offset:-2px}.jkl-tab[aria-selected=true]{--jkl-icon-weight:500;font-weight:700;letter-spacing:-.014em}
@@ -78,7 +78,7 @@
78
78
  --jkl-text-input-action-button-size: 3rem;
79
79
  --jkl-text-input-action-button-icon-size: 1.25rem;
80
80
  --jkl-text-input-action-button-padding: 0.5rem 0;
81
- --jkl-text-input-action-button-focus-position: 0.5rem;
81
+ --jkl-text-input-action-button-focus-position: 0.375rem;
82
82
  }
83
83
  @media (width >= 0) and (max-width: 679px) {
84
84
  :root,
@@ -105,7 +105,44 @@
105
105
  --jkl-text-input-action-button-focus-position: 0;
106
106
  }
107
107
 
108
- .jkl-text-input-action-button {
108
+ .jkl-text-input-wrapper {
109
+ border-radius: 0.1875rem;
110
+ box-sizing: border-box;
111
+ max-width: 100%;
112
+ position: relative;
113
+ display: flex;
114
+ align-items: center;
115
+ height: var(--jkl-text-input-height);
116
+ font-size: var(--jkl-text-input-font-size);
117
+ line-height: var(--jkl-text-input-line-height);
118
+ font-weight: var(--jkl-text-input-font-weight);
119
+ transition-timing-function: ease;
120
+ transition-duration: 150ms;
121
+ transition-property: color, box-shadow, background-color;
122
+ color: var(--jkl-text-input-text-color);
123
+ box-shadow: inset 0 0 0 0.0625rem var(--jkl-text-input-border-color), 0 0 0 0.0625rem transparent;
124
+ background-color: transparent;
125
+ }
126
+ .jkl-text-input-wrapper[data-invalid=true] {
127
+ background-color: var(--jkl-text-input-error-background-color);
128
+ color: var(--jkl-text-input-error-text-color);
129
+ }
130
+ .jkl-text-input-wrapper:hover {
131
+ box-shadow: inset 0 0 0 0.0625rem var(--jkl-text-input-focus-color), 0 0 0 0.0625rem var(--jkl-text-input-focus-color);
132
+ border-color: var(--jkl-text-input-focus-color);
133
+ }
134
+ .jkl-text-input-wrapper:has(:active) {
135
+ background-color: var(--jkl-text-input-background-color);
136
+ }
137
+ .jkl-text-input-wrapper:has(.jkl-text-input__input:focus-visible), .jkl-text-input-wrapper:has(.jkl-text-area__text-area:focus-visible) {
138
+ outline: 3px solid var(--jkl-color-border-action);
139
+ outline-offset: 3px;
140
+ }
141
+ .jkl-text-input-wrapper > .jkl-icon-button:focus-visible {
142
+ outline: 3px solid var(--jkl-color-border-action);
143
+ outline-offset: -8px;
144
+ }
145
+ .jkl-text-input-wrapper > .jkl-text-input-action-button {
109
146
  flex-shrink: 0;
110
147
  display: flex;
111
148
  box-sizing: border-box;
@@ -116,78 +153,33 @@
116
153
  width: var(--jkl-text-input-action-button-size);
117
154
  margin-inline-start: calc(var(--jkl-text-input-horizontal-padding) * -1);
118
155
  }
119
- .jkl-text-input-action-button .jkl-icon-button__icon {
156
+ .jkl-text-input-wrapper > .jkl-text-input-action-button .jkl-icon-button__icon {
120
157
  height: var(--jkl-text-input-action-button-icon-size);
121
158
  width: var(--jkl-text-input-action-button-icon-size);
122
159
  }
123
- .jkl-text-input-action-button:hover {
160
+ .jkl-text-input-wrapper > .jkl-text-input-action-button:hover {
124
161
  color: var(--jkl-text-input-focus-color);
125
162
  }
126
163
  @media screen and (forced-colors: active) {
127
- .jkl-text-input-action-button:hover {
164
+ .jkl-text-input-wrapper > .jkl-text-input-action-button:hover {
128
165
  border: 0.125rem inset ButtonText;
129
166
  }
130
167
  }
131
- .jkl-text-input-action-button:focus-visible {
132
- outline: none !important;
133
- }
134
- html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-input-action-button:focus {
135
- position: relative;
136
- }
137
- html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-input-action-button:focus::after {
138
- content: "";
139
- position: absolute;
140
- inset: var(--jkl-text-input-action-button-focus-position) var(--jkl-text-input-action-button-focus-position) var(--jkl-text-input-action-button-focus-position) var(--jkl-text-input-action-button-focus-position);
141
- box-shadow: inset 0 0 0 0.125rem var(--jkl-text-input-focus-color);
142
- }
143
-
144
168
  @media screen and (forced-colors: active) {
145
- .jkl-text-input-action-button {
169
+ .jkl-text-input-wrapper > .jkl-text-input-action-button {
146
170
  border: revert;
147
171
  background-color: revert;
148
172
  }
149
173
  }
150
174
  @media screen and (forced-colors: active) {
151
- .jkl-text-input-action-button {
175
+ .jkl-text-input-wrapper > .jkl-text-input-action-button {
152
176
  stroke: ButtonText;
153
177
  }
154
- .jkl-text-input-action-button svg, .jkl-text-input-action-button path {
178
+ .jkl-text-input-wrapper > .jkl-text-input-action-button svg, .jkl-text-input-wrapper > .jkl-text-input-action-button path {
155
179
  stroke: ButtonText;
156
180
  }
157
181
  }
158
182
 
159
- .jkl-text-input-wrapper {
160
- border-radius: 0.1875rem;
161
- box-sizing: border-box;
162
- max-width: 100%;
163
- position: relative;
164
- display: flex;
165
- align-items: center;
166
- height: var(--jkl-text-input-height);
167
- font-size: var(--jkl-text-input-font-size);
168
- line-height: var(--jkl-text-input-line-height);
169
- font-weight: var(--jkl-text-input-font-weight);
170
- transition-timing-function: ease;
171
- transition-duration: 150ms;
172
- transition-property: color, box-shadow, background-color;
173
- color: var(--jkl-text-input-text-color);
174
- box-shadow: inset 0 0 0 0.0625rem var(--jkl-text-input-border-color), 0 0 0 0.0625rem transparent;
175
- background-color: transparent;
176
- }
177
- .jkl-text-input-wrapper:hover {
178
- box-shadow: inset 0 0 0 0.0625rem var(--jkl-text-input-focus-color), 0 0 0 0.0625rem var(--jkl-text-input-focus-color);
179
- border-color: var(--jkl-text-input-focus-color);
180
- }
181
- .jkl-text-input-wrapper:focus-within {
182
- background-color: var(--jkl-text-input-background-color);
183
- box-shadow: inset 0 0 0 0.0625rem var(--jkl-text-input-focus-color), 0 0 0 0.0625rem var(--jkl-text-input-focus-color);
184
- border-color: var(--jkl-text-input-focus-color);
185
- }
186
- .jkl-text-input-wrapper[data-invalid=true] {
187
- background-color: var(--jkl-text-input-error-background-color);
188
- color: var(--jkl-text-input-error-text-color);
189
- }
190
-
191
183
  .jkl-text-input {
192
184
  display: flex;
193
185
  flex-direction: column;
@@ -1 +1 @@
1
- @media screen and (prefers-color-scheme:light){:root{--jkl-text-input-border-color:#636060;--jkl-text-input-text-color:#1b1917;--jkl-text-input-placeholder-color:#636060;--jkl-text-input-unit-color:#1b1917;--jkl-text-input-background-color:#fff;--jkl-text-input-focus-color:#1b1917;--jkl-text-input-error-background-color:#f6b3b3;--jkl-text-input-error-text-color:#1b1917;--jkl-text-input-error-placeholder-color:#636060;--jkl-text-input-selection-color:rgba(27,25,23,.2);--jkl-text-input-error-selection-color:rgba(27,25,23,.2);--jkl-text-area-counter-count-color:#636060}}[data-theme=light]{--jkl-text-input-border-color:#636060;--jkl-text-input-text-color:#1b1917;--jkl-text-input-placeholder-color:#636060;--jkl-text-input-unit-color:#1b1917;--jkl-text-input-background-color:#fff;--jkl-text-input-focus-color:#1b1917;--jkl-text-input-error-background-color:#f6b3b3;--jkl-text-input-error-text-color:#1b1917;--jkl-text-input-error-placeholder-color:#636060;--jkl-text-input-selection-color:rgba(27,25,23,.2);--jkl-text-input-error-selection-color:rgba(27,25,23,.2);--jkl-text-area-counter-count-color:#636060}@media screen and (prefers-color-scheme:dark){:root{--jkl-text-input-border-color:#c8c5c3;--jkl-text-input-text-color:#f9f9f9;--jkl-text-input-placeholder-color:#c8c5c3;--jkl-text-input-unit-color:#f9f9f9;--jkl-text-input-background-color:#313030;--jkl-text-input-focus-color:#f9f9f9;--jkl-text-input-selection-color:hsla(0,0%,98%,.25);--jkl-text-input-error-background-color:#f6b3b3;--jkl-text-input-error-text-color:#1b1917;--jkl-text-input-error-placeholder-color:#636060;--jkl-text-input-error-selection-color:rgba(27,25,23,.2);--jkl-text-area-counter-count-color:#c8c5c3}}[data-theme=dark]{--jkl-text-input-border-color:#c8c5c3;--jkl-text-input-text-color:#f9f9f9;--jkl-text-input-placeholder-color:#c8c5c3;--jkl-text-input-unit-color:#f9f9f9;--jkl-text-input-background-color:#313030;--jkl-text-input-focus-color:#f9f9f9;--jkl-text-input-selection-color:hsla(0,0%,98%,.25);--jkl-text-input-error-background-color:#f6b3b3;--jkl-text-input-error-text-color:#1b1917;--jkl-text-input-error-placeholder-color:#636060;--jkl-text-input-error-selection-color:rgba(27,25,23,.2);--jkl-text-area-counter-count-color:#c8c5c3}:root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-text-input-font-size:var(--jkl-body-font-size);--jkl-text-input-line-height:var(--jkl-body-line-height);--jkl-text-input-font-weight:var(--jkl-body-font-weight);--jkl-text-input-height:3rem;--jkl-text-input-vertical-padding:0.5rem;--jkl-text-input-horizontal-padding:0.75rem;--jkl-text-input-padding:var(--jkl-text-input-vertical-padding) var(--jkl-text-input-horizontal-padding);--jkl-text-input-action-button-size:3rem;--jkl-text-input-action-button-icon-size:1.25rem;--jkl-text-input-action-button-padding:0.5rem 0;--jkl-text-input-action-button-focus-position:0.5rem}@media (width >= 0) and (max-width:679px){:root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-text-input-height:2.75rem;--jkl-text-input-action-button-size:2.75rem}}[data-density=compact],[data-layout-density=compact]{--jkl-text-input-font-size:var(--jkl-small-font-size);--jkl-text-input-line-height:var(--jkl-small-line-height);--jkl-text-input-font-weight:var(--jkl-small-font-weight);--jkl-text-input-height:2rem;--jkl-text-input-vertical-padding:0.25rem;--jkl-text-input-horizontal-padding:0.5rem;--jkl-text-input-padding:var(--jkl-text-input-vertical-padding) var(--jkl-text-input-horizontal-padding);--jkl-text-input-action-button-size:2rem;--jkl-text-input-action-button-icon-size:1.125rem;--jkl-text-input-action-button-padding:0;--jkl-text-input-action-button-focus-position:0}.jkl-text-input-action-button{align-items:center;box-sizing:border-box;display:flex;flex-shrink:0;height:var(--jkl-text-input-action-button-size);justify-content:center;margin-inline-start:calc(var(--jkl-text-input-horizontal-padding)*-1);padding:var(--jkl-text-input-action-button-padding);width:var(--jkl-text-input-action-button-size)}.jkl-text-input-action-button .jkl-icon-button__icon{height:var(--jkl-text-input-action-button-icon-size);width:var(--jkl-text-input-action-button-icon-size)}.jkl-text-input-action-button:hover{color:var(--jkl-text-input-focus-color)}@media screen and (forced-colors:active){.jkl-text-input-action-button:hover{border:.125rem inset ButtonText}}.jkl-text-input-action-button:focus-visible{outline:none!important}html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-input-action-button:focus{position:relative}html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-input-action-button:focus:after{box-shadow:inset 0 0 0 .125rem var(--jkl-text-input-focus-color);content:"";inset:var(--jkl-text-input-action-button-focus-position) var(--jkl-text-input-action-button-focus-position) var(--jkl-text-input-action-button-focus-position) var(--jkl-text-input-action-button-focus-position);position:absolute}@media screen and (forced-colors:active){.jkl-text-input-action-button{background-color:revert;border:revert;stroke:ButtonText}.jkl-text-input-action-button path,.jkl-text-input-action-button svg{stroke:ButtonText}}.jkl-text-input-wrapper{align-items:center;background-color:transparent;border-radius:.1875rem;box-shadow:inset 0 0 0 .0625rem var(--jkl-text-input-border-color),0 0 0 .0625rem transparent;box-sizing:border-box;color:var(--jkl-text-input-text-color);display:flex;font-size:var(--jkl-text-input-font-size);font-weight:var(--jkl-text-input-font-weight);height:var(--jkl-text-input-height);line-height:var(--jkl-text-input-line-height);max-width:100%;position:relative;transition-duration:.15s;transition-property:color,box-shadow,background-color;transition-timing-function:ease}.jkl-text-input-wrapper:hover{border-color:var(--jkl-text-input-focus-color);box-shadow:inset 0 0 0 .0625rem var(--jkl-text-input-focus-color),0 0 0 .0625rem var(--jkl-text-input-focus-color)}.jkl-text-input-wrapper:focus-within{background-color:var(--jkl-text-input-background-color);border-color:var(--jkl-text-input-focus-color);box-shadow:inset 0 0 0 .0625rem var(--jkl-text-input-focus-color),0 0 0 .0625rem var(--jkl-text-input-focus-color)}.jkl-text-input-wrapper[data-invalid=true]{background-color:var(--jkl-text-input-error-background-color);color:var(--jkl-text-input-error-text-color)}.jkl-text-input{align-items:flex-start;display:flex;flex-direction:column}.jkl-text-input__input{-webkit-appearance:none;background:none;border-style:none;color:var(--jkl-color);font-size:var(--jkl-text-input-font-size);font-weight:var(--jkl-text-input-font-weight);line-height:var(--jkl-text-input-line-height);outline:0;outline-style:none;padding:var(--jkl-text-input-padding);width:100%}.jkl-text-input__input:active,.jkl-text-input__input:focus,.jkl-text-input__input:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-text-input__input{border-style:revert;outline:revert;outline-style:revert}.jkl-text-input__input:active,.jkl-text-input__input:focus,.jkl-text-input__input:hover{outline:revert;outline-style:revert}}.jkl-text-input__input input[type=number]::-webkit-inner-spin-button,.jkl-text-input__input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.jkl-text-input__input input[type=number]{-moz-appearance:textfield}.jkl-text-input__input::placeholder{color:var(--jkl-text-input-placeholder-color);opacity:1}.jkl-text-input__input::selection{background-color:var(--jkl-text-input-selection-color)}[data-theme=dark] .jkl-text-input__input::selection{background-color:var(--jkl-text-input-selection-color)}.jkl-text-input__input[aria-invalid=true]{color:var(--jkl-text-input-error-text-color)}.jkl-text-input__input[aria-invalid=true]::placeholder{color:var(--jkl-text-input-error-placeholder-color)}.jkl-text-input__input[aria-invalid=true]::selection{background-color:var(--jkl-text-input-error-selection-color)}.jkl-text-input__input[aria-invalid=true]~.jkl-text-input-action-button{color:var(--jkl-color-text-on-alert)}.jkl-text-input__input[aria-invalid=true]~.jkl-text-input-action-button:hover{color:var(--jkl-text-input-error-text-color)}html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-input__input[aria-invalid=true]~.jkl-text-input-action-button:focus:after{box-shadow:inset 0 0 0 .125rem var(--jkl-text-input-error-text-color)}.jkl-text-input__input[aria-invalid=true]~.jkl-text-input__unit{color:var(--jkl-text-input-error-text-color)}.jkl-text-input__input--align-right{text-align:right}.jkl-text-input__unit{color:var(--jkl-text-input-unit-color);padding-block:var(--jkl-text-input-vertical-padding);padding-inline-end:var(--jkl-text-input-horizontal-padding)}.jkl-text-input__action-button{margin-inline-start:calc(var(--jkl-text-input-horizontal-padding)*-1)}.jkl-text-input--inline{display:inline-block;margin:-.125rem .25rem;vertical-align:middle}.jkl-text-area{height:auto;width:100%}.jkl-text-area__text-area{-webkit-appearance:none;background:none;border-style:none;box-sizing:border-box;color:var(--jkl-color);font-size:var(--jkl-text-input-font-size);font-weight:var(--jkl-text-input-font-weight);height:var(--jkl-text-input-height);line-height:var(--jkl-text-input-line-height);max-height:var(--jkl-text-input-height);min-height:var(--jkl-text-input-height);outline:0;outline-style:none;padding:var(--jkl-text-input-padding);resize:none;scrollbar-color:var(--jkl-color) transparent;transition-duration:.15s;transition-property:height,min-height,max-height,padding;transition-timing-function:ease;width:100%}.jkl-text-area__text-area:active,.jkl-text-area__text-area:focus,.jkl-text-area__text-area:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-text-area__text-area{border-style:revert;outline:revert;outline-style:revert}.jkl-text-area__text-area:active,.jkl-text-area__text-area:focus,.jkl-text-area__text-area:hover{outline:revert;outline-style:revert}}.jkl-text-area__text-area input[type=number]::-webkit-inner-spin-button,.jkl-text-area__text-area input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.jkl-text-area__text-area input[type=number]{-moz-appearance:textfield}.jkl-text-area__text-area::placeholder{color:var(--jkl-text-input-placeholder-color);opacity:1}.jkl-text-area__text-area::selection{background-color:var(--jkl-text-input-selection-color)}[data-theme=dark] .jkl-text-area__text-area::selection{background-color:var(--jkl-text-input-selection-color)}.jkl-text-area__text-area[aria-invalid=true]{color:var(--jkl-text-input-error-text-color)}.jkl-text-area__text-area[aria-invalid=true]::placeholder{color:var(--jkl-text-input-error-placeholder-color)}.jkl-text-area__text-area[aria-invalid=true]::selection{background-color:var(--jkl-text-input-error-selection-color)}.jkl-text-area__text-area[aria-invalid=true]~.jkl-text-input-action-button{color:var(--jkl-color-text-on-alert)}.jkl-text-area__text-area[aria-invalid=true]~.jkl-text-input-action-button:hover{color:var(--jkl-text-input-error-text-color)}html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-area__text-area[aria-invalid=true]~.jkl-text-input-action-button:focus:after{box-shadow:inset 0 0 0 .125rem var(--jkl-text-input-error-text-color)}.jkl-text-area__text-area[aria-invalid=true]~.jkl-text-input__unit{color:var(--jkl-text-input-error-text-color)}.jkl-text-area .jkl-text-input-wrapper{height:auto;max-height:100%}.jkl-text-area--start-open .jkl-text-input-wrapper{max-height:100%}.jkl-text-area--auto-expand .jkl-text-area__text-area{overflow:hidden}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-input-wrapper{position:relative}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-input-wrapper:focus-within,.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-input-wrapper[data-has-content=true]{padding-bottom:calc(var(--jkl-text-input-height) + .25rem)}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-area__counter{bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;transition-duration:.15s;transition-property:opacity;transition-timing-function:ease}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-area__counter-count{color:var(--jkl-text-area-counter-count-color);font-size:1rem;font-weight:400;line-height:1.5rem;padding:var(--jkl-text-input-padding);--jkl-icon-weight:300;--jkl-icon-size:1.25rem;--jkl-icon-opsz:20}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-area__counter-progress{background-color:transparent;height:.25rem;overflow:hidden;width:100%}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-area__counter-progress:after{background-color:var(--jkl-color);content:"";display:block;height:.25rem;transition-duration:.4s;transition-property:width;transition-timing-function:ease;width:var(--progress-width,100%)}.jkl-text-area:has(.jkl-text-area__counter):focus-within .jkl-text-area__counter{opacity:1;transition-delay:.15s}.jkl-text-area:has(.jkl-text-area__counter) [aria-invalid=true]~.jkl-text-area__counter{color:var(--jkl-text-input-error-text-color)}.jkl-text-area--start-open .jkl-text-area__text-area--3-rows,.jkl-text-area__text-area--3-rows:focus,.jkl-text-area__text-area--3-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*3);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--4-rows,.jkl-text-area__text-area--4-rows:focus,.jkl-text-area__text-area--4-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*4);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--5-rows,.jkl-text-area__text-area--5-rows:focus,.jkl-text-area__text-area--5-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*5);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--6-rows,.jkl-text-area__text-area--6-rows:focus,.jkl-text-area__text-area--6-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*6);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--7-rows,.jkl-text-area__text-area--7-rows:focus,.jkl-text-area__text-area--7-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*7);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--8-rows,.jkl-text-area__text-area--8-rows:focus,.jkl-text-area__text-area--8-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*8);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--9-rows,.jkl-text-area__text-area--9-rows:focus,.jkl-text-area__text-area--9-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*9);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--10-rows,.jkl-text-area__text-area--10-rows:focus,.jkl-text-area__text-area--10-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*10);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}
1
+ @media screen and (prefers-color-scheme:light){:root{--jkl-text-input-border-color:#636060;--jkl-text-input-text-color:#1b1917;--jkl-text-input-placeholder-color:#636060;--jkl-text-input-unit-color:#1b1917;--jkl-text-input-background-color:#fff;--jkl-text-input-focus-color:#1b1917;--jkl-text-input-error-background-color:#f6b3b3;--jkl-text-input-error-text-color:#1b1917;--jkl-text-input-error-placeholder-color:#636060;--jkl-text-input-selection-color:rgba(27,25,23,.2);--jkl-text-input-error-selection-color:rgba(27,25,23,.2);--jkl-text-area-counter-count-color:#636060}}[data-theme=light]{--jkl-text-input-border-color:#636060;--jkl-text-input-text-color:#1b1917;--jkl-text-input-placeholder-color:#636060;--jkl-text-input-unit-color:#1b1917;--jkl-text-input-background-color:#fff;--jkl-text-input-focus-color:#1b1917;--jkl-text-input-error-background-color:#f6b3b3;--jkl-text-input-error-text-color:#1b1917;--jkl-text-input-error-placeholder-color:#636060;--jkl-text-input-selection-color:rgba(27,25,23,.2);--jkl-text-input-error-selection-color:rgba(27,25,23,.2);--jkl-text-area-counter-count-color:#636060}@media screen and (prefers-color-scheme:dark){:root{--jkl-text-input-border-color:#c8c5c3;--jkl-text-input-text-color:#f9f9f9;--jkl-text-input-placeholder-color:#c8c5c3;--jkl-text-input-unit-color:#f9f9f9;--jkl-text-input-background-color:#313030;--jkl-text-input-focus-color:#f9f9f9;--jkl-text-input-selection-color:hsla(0,0%,98%,.25);--jkl-text-input-error-background-color:#f6b3b3;--jkl-text-input-error-text-color:#1b1917;--jkl-text-input-error-placeholder-color:#636060;--jkl-text-input-error-selection-color:rgba(27,25,23,.2);--jkl-text-area-counter-count-color:#c8c5c3}}[data-theme=dark]{--jkl-text-input-border-color:#c8c5c3;--jkl-text-input-text-color:#f9f9f9;--jkl-text-input-placeholder-color:#c8c5c3;--jkl-text-input-unit-color:#f9f9f9;--jkl-text-input-background-color:#313030;--jkl-text-input-focus-color:#f9f9f9;--jkl-text-input-selection-color:hsla(0,0%,98%,.25);--jkl-text-input-error-background-color:#f6b3b3;--jkl-text-input-error-text-color:#1b1917;--jkl-text-input-error-placeholder-color:#636060;--jkl-text-input-error-selection-color:rgba(27,25,23,.2);--jkl-text-area-counter-count-color:#c8c5c3}:root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-text-input-font-size:var(--jkl-body-font-size);--jkl-text-input-line-height:var(--jkl-body-line-height);--jkl-text-input-font-weight:var(--jkl-body-font-weight);--jkl-text-input-height:3rem;--jkl-text-input-vertical-padding:0.5rem;--jkl-text-input-horizontal-padding:0.75rem;--jkl-text-input-padding:var(--jkl-text-input-vertical-padding) var(--jkl-text-input-horizontal-padding);--jkl-text-input-action-button-size:3rem;--jkl-text-input-action-button-icon-size:1.25rem;--jkl-text-input-action-button-padding:0.5rem 0;--jkl-text-input-action-button-focus-position:0.375rem}@media (width >= 0) and (max-width:679px){:root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-text-input-height:2.75rem;--jkl-text-input-action-button-size:2.75rem}}[data-density=compact],[data-layout-density=compact]{--jkl-text-input-font-size:var(--jkl-small-font-size);--jkl-text-input-line-height:var(--jkl-small-line-height);--jkl-text-input-font-weight:var(--jkl-small-font-weight);--jkl-text-input-height:2rem;--jkl-text-input-vertical-padding:0.25rem;--jkl-text-input-horizontal-padding:0.5rem;--jkl-text-input-padding:var(--jkl-text-input-vertical-padding) var(--jkl-text-input-horizontal-padding);--jkl-text-input-action-button-size:2rem;--jkl-text-input-action-button-icon-size:1.125rem;--jkl-text-input-action-button-padding:0;--jkl-text-input-action-button-focus-position:0}.jkl-text-input-wrapper{align-items:center;background-color:transparent;border-radius:.1875rem;box-shadow:inset 0 0 0 .0625rem var(--jkl-text-input-border-color),0 0 0 .0625rem transparent;box-sizing:border-box;color:var(--jkl-text-input-text-color);display:flex;font-size:var(--jkl-text-input-font-size);font-weight:var(--jkl-text-input-font-weight);height:var(--jkl-text-input-height);line-height:var(--jkl-text-input-line-height);max-width:100%;position:relative;transition-duration:.15s;transition-property:color,box-shadow,background-color;transition-timing-function:ease}.jkl-text-input-wrapper[data-invalid=true]{background-color:var(--jkl-text-input-error-background-color);color:var(--jkl-text-input-error-text-color)}.jkl-text-input-wrapper:hover{border-color:var(--jkl-text-input-focus-color);box-shadow:inset 0 0 0 .0625rem var(--jkl-text-input-focus-color),0 0 0 .0625rem var(--jkl-text-input-focus-color)}.jkl-text-input-wrapper:has(:active){background-color:var(--jkl-text-input-background-color)}.jkl-text-input-wrapper:has(.jkl-text-area__text-area:focus-visible),.jkl-text-input-wrapper:has(.jkl-text-input__input:focus-visible){outline:3px solid var(--jkl-color-border-action);outline-offset:3px}.jkl-text-input-wrapper>.jkl-icon-button:focus-visible{outline:3px solid var(--jkl-color-border-action);outline-offset:-8px}.jkl-text-input-wrapper>.jkl-text-input-action-button{align-items:center;box-sizing:border-box;display:flex;flex-shrink:0;height:var(--jkl-text-input-action-button-size);justify-content:center;margin-inline-start:calc(var(--jkl-text-input-horizontal-padding)*-1);padding:var(--jkl-text-input-action-button-padding);width:var(--jkl-text-input-action-button-size)}.jkl-text-input-wrapper>.jkl-text-input-action-button .jkl-icon-button__icon{height:var(--jkl-text-input-action-button-icon-size);width:var(--jkl-text-input-action-button-icon-size)}.jkl-text-input-wrapper>.jkl-text-input-action-button:hover{color:var(--jkl-text-input-focus-color)}@media screen and (forced-colors:active){.jkl-text-input-wrapper>.jkl-text-input-action-button:hover{border:.125rem inset ButtonText}}@media screen and (forced-colors:active){.jkl-text-input-wrapper>.jkl-text-input-action-button{background-color:revert;border:revert}}@media screen and (forced-colors:active){.jkl-text-input-wrapper>.jkl-text-input-action-button{stroke:ButtonText}.jkl-text-input-wrapper>.jkl-text-input-action-button path,.jkl-text-input-wrapper>.jkl-text-input-action-button svg{stroke:ButtonText}}.jkl-text-input{align-items:flex-start;display:flex;flex-direction:column}.jkl-text-input__input{-webkit-appearance:none;background:none;border-style:none;color:var(--jkl-color);font-size:var(--jkl-text-input-font-size);font-weight:var(--jkl-text-input-font-weight);line-height:var(--jkl-text-input-line-height);outline:0;outline-style:none;padding:var(--jkl-text-input-padding);width:100%}.jkl-text-input__input:active,.jkl-text-input__input:focus,.jkl-text-input__input:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-text-input__input{border-style:revert;outline:revert;outline-style:revert}.jkl-text-input__input:active,.jkl-text-input__input:focus,.jkl-text-input__input:hover{outline:revert;outline-style:revert}}.jkl-text-input__input input[type=number]::-webkit-inner-spin-button,.jkl-text-input__input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.jkl-text-input__input input[type=number]{-moz-appearance:textfield}.jkl-text-input__input::placeholder{color:var(--jkl-text-input-placeholder-color);opacity:1}.jkl-text-input__input::selection{background-color:var(--jkl-text-input-selection-color)}[data-theme=dark] .jkl-text-input__input::selection{background-color:var(--jkl-text-input-selection-color)}.jkl-text-input__input[aria-invalid=true]{color:var(--jkl-text-input-error-text-color)}.jkl-text-input__input[aria-invalid=true]::placeholder{color:var(--jkl-text-input-error-placeholder-color)}.jkl-text-input__input[aria-invalid=true]::selection{background-color:var(--jkl-text-input-error-selection-color)}.jkl-text-input__input[aria-invalid=true]~.jkl-text-input-action-button{color:var(--jkl-color-text-on-alert)}.jkl-text-input__input[aria-invalid=true]~.jkl-text-input-action-button:hover{color:var(--jkl-text-input-error-text-color)}html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-input__input[aria-invalid=true]~.jkl-text-input-action-button:focus:after{box-shadow:inset 0 0 0 .125rem var(--jkl-text-input-error-text-color)}.jkl-text-input__input[aria-invalid=true]~.jkl-text-input__unit{color:var(--jkl-text-input-error-text-color)}.jkl-text-input__input--align-right{text-align:right}.jkl-text-input__unit{color:var(--jkl-text-input-unit-color);padding-block:var(--jkl-text-input-vertical-padding);padding-inline-end:var(--jkl-text-input-horizontal-padding)}.jkl-text-input__action-button{margin-inline-start:calc(var(--jkl-text-input-horizontal-padding)*-1)}.jkl-text-input--inline{display:inline-block;margin:-.125rem .25rem;vertical-align:middle}.jkl-text-area{height:auto;width:100%}.jkl-text-area__text-area{-webkit-appearance:none;background:none;border-style:none;box-sizing:border-box;color:var(--jkl-color);font-size:var(--jkl-text-input-font-size);font-weight:var(--jkl-text-input-font-weight);height:var(--jkl-text-input-height);line-height:var(--jkl-text-input-line-height);max-height:var(--jkl-text-input-height);min-height:var(--jkl-text-input-height);outline:0;outline-style:none;padding:var(--jkl-text-input-padding);resize:none;scrollbar-color:var(--jkl-color) transparent;transition-duration:.15s;transition-property:height,min-height,max-height,padding;transition-timing-function:ease;width:100%}.jkl-text-area__text-area:active,.jkl-text-area__text-area:focus,.jkl-text-area__text-area:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-text-area__text-area{border-style:revert;outline:revert;outline-style:revert}.jkl-text-area__text-area:active,.jkl-text-area__text-area:focus,.jkl-text-area__text-area:hover{outline:revert;outline-style:revert}}.jkl-text-area__text-area input[type=number]::-webkit-inner-spin-button,.jkl-text-area__text-area input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.jkl-text-area__text-area input[type=number]{-moz-appearance:textfield}.jkl-text-area__text-area::placeholder{color:var(--jkl-text-input-placeholder-color);opacity:1}.jkl-text-area__text-area::selection{background-color:var(--jkl-text-input-selection-color)}[data-theme=dark] .jkl-text-area__text-area::selection{background-color:var(--jkl-text-input-selection-color)}.jkl-text-area__text-area[aria-invalid=true]{color:var(--jkl-text-input-error-text-color)}.jkl-text-area__text-area[aria-invalid=true]::placeholder{color:var(--jkl-text-input-error-placeholder-color)}.jkl-text-area__text-area[aria-invalid=true]::selection{background-color:var(--jkl-text-input-error-selection-color)}.jkl-text-area__text-area[aria-invalid=true]~.jkl-text-input-action-button{color:var(--jkl-color-text-on-alert)}.jkl-text-area__text-area[aria-invalid=true]~.jkl-text-input-action-button:hover{color:var(--jkl-text-input-error-text-color)}html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-area__text-area[aria-invalid=true]~.jkl-text-input-action-button:focus:after{box-shadow:inset 0 0 0 .125rem var(--jkl-text-input-error-text-color)}.jkl-text-area__text-area[aria-invalid=true]~.jkl-text-input__unit{color:var(--jkl-text-input-error-text-color)}.jkl-text-area .jkl-text-input-wrapper{height:auto;max-height:100%}.jkl-text-area--start-open .jkl-text-input-wrapper{max-height:100%}.jkl-text-area--auto-expand .jkl-text-area__text-area{overflow:hidden}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-input-wrapper{position:relative}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-input-wrapper:focus-within,.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-input-wrapper[data-has-content=true]{padding-bottom:calc(var(--jkl-text-input-height) + .25rem)}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-area__counter{bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;transition-duration:.15s;transition-property:opacity;transition-timing-function:ease}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-area__counter-count{color:var(--jkl-text-area-counter-count-color);font-size:1rem;font-weight:400;line-height:1.5rem;padding:var(--jkl-text-input-padding);--jkl-icon-weight:300;--jkl-icon-size:1.25rem;--jkl-icon-opsz:20}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-area__counter-progress{background-color:transparent;height:.25rem;overflow:hidden;width:100%}.jkl-text-area:has(.jkl-text-area__counter) .jkl-text-area__counter-progress:after{background-color:var(--jkl-color);content:"";display:block;height:.25rem;transition-duration:.4s;transition-property:width;transition-timing-function:ease;width:var(--progress-width,100%)}.jkl-text-area:has(.jkl-text-area__counter):focus-within .jkl-text-area__counter{opacity:1;transition-delay:.15s}.jkl-text-area:has(.jkl-text-area__counter) [aria-invalid=true]~.jkl-text-area__counter{color:var(--jkl-text-input-error-text-color)}.jkl-text-area--start-open .jkl-text-area__text-area--3-rows,.jkl-text-area__text-area--3-rows:focus,.jkl-text-area__text-area--3-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*3);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--4-rows,.jkl-text-area__text-area--4-rows:focus,.jkl-text-area__text-area--4-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*4);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--5-rows,.jkl-text-area__text-area--5-rows:focus,.jkl-text-area__text-area--5-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*5);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--6-rows,.jkl-text-area__text-area--6-rows:focus,.jkl-text-area__text-area--6-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*6);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--7-rows,.jkl-text-area__text-area--7-rows:focus,.jkl-text-area__text-area--7-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*7);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--8-rows,.jkl-text-area__text-area--8-rows:focus,.jkl-text-area__text-area--8-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*8);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--9-rows,.jkl-text-area__text-area--9-rows:focus,.jkl-text-area__text-area--9-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*9);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}.jkl-text-area--start-open .jkl-text-area__text-area--10-rows,.jkl-text-area__text-area--10-rows:focus,.jkl-text-area__text-area--10-rows:not(:placeholder-shown){--height:calc(var(--jkl-text-input-line-height)*10);--vertical-padding:calc(var(--jkl-text-input-vertical-padding)*2);height:calc(var(--height) + var(--vertical-padding));max-height:100%;min-height:calc(var(--height) + var(--vertical-padding))}
@@ -18,7 +18,7 @@ $_action-button-icon-size: jkl.rem(20px);
18
18
  $_action-button-icon-size--compact: jkl.rem(18px);
19
19
  $_action-button-padding: jkl.$spacing-xs 0;
20
20
  $_action-button-padding--compact: 0;
21
- $_action-button-focus-position: jkl.rem(8px);
21
+ $_action-button-focus-position: jkl.rem(6px);
22
22
  $_action-button-focus-position--compact: 0;
23
23
 
24
24
  $_text-input-focus-color: jkl.$color-granitt;
@@ -156,63 +156,6 @@ $_text-input-selection-color--inverted: color.scale(
156
156
  }
157
157
  }
158
158
 
159
- .jkl-text-input-action-button {
160
- flex-shrink: 0;
161
- display: flex;
162
- box-sizing: border-box;
163
- align-items: center;
164
- justify-content: center;
165
- padding: var(--jkl-text-input-action-button-padding);
166
- height: var(--jkl-text-input-action-button-size);
167
- width: var(--jkl-text-input-action-button-size);
168
-
169
- // Unngå for langt mellomrom mellom ikon og teksten i feltet
170
- margin-inline-start: calc(var(--jkl-text-input-horizontal-padding) * -1);
171
-
172
- .jkl-icon-button__icon {
173
- height: var(--jkl-text-input-action-button-icon-size);
174
- width: var(--jkl-text-input-action-button-icon-size);
175
- }
176
-
177
- &:hover {
178
- color: var(--jkl-text-input-focus-color);
179
-
180
- @include jkl.forced-colors-mode {
181
- border: jkl.rem(2px) inset ButtonText;
182
- }
183
- }
184
-
185
- &:focus-visible {
186
- // The default icon-button focus looks pretty terrible when the button
187
- // is inside an input field so make sure to remove it.
188
- outline: none !important;
189
- }
190
-
191
- &:focus {
192
- @include jkl.keyboard-navigation {
193
- position: relative;
194
-
195
- &::after {
196
- content: "";
197
- position: absolute;
198
- inset: var(--jkl-text-input-action-button-focus-position)
199
- var(--jkl-text-input-action-button-focus-position)
200
- var(--jkl-text-input-action-button-focus-position)
201
- var(--jkl-text-input-action-button-focus-position);
202
- box-shadow: inset 0 0 0 jkl.rem(2px)
203
- var(--jkl-text-input-focus-color);
204
- }
205
- }
206
- }
207
-
208
- @include jkl.forced-colors-mode {
209
- border: revert;
210
- background-color: revert;
211
- }
212
-
213
- @include jkl.forced-colors-svg-fallback($stroke: ButtonText);
214
- }
215
-
216
159
  .jkl-text-input-wrapper {
217
160
  border-radius: jkl.rem(3px);
218
161
  box-sizing: border-box;
@@ -232,22 +175,64 @@ $_text-input-selection-color--inverted: color.scale(
232
175
  0 0 0 jkl.rem(1px) transparent;
233
176
  background-color: transparent;
234
177
 
178
+ &[data-invalid="true"] {
179
+ background-color: var(--jkl-text-input-error-background-color);
180
+ color: var(--jkl-text-input-error-text-color);
181
+ }
182
+
235
183
  &:hover {
236
184
  box-shadow: inset 0 0 0 jkl.rem(1px) var(--jkl-text-input-focus-color),
237
185
  0 0 0 jkl.rem(1px) var(--jkl-text-input-focus-color);
238
186
  border-color: var(--jkl-text-input-focus-color);
239
187
  }
240
188
 
241
- &:focus-within {
189
+ &:has(:active) {
242
190
  background-color: var(--jkl-text-input-background-color);
243
- box-shadow: inset 0 0 0 jkl.rem(1px) var(--jkl-text-input-focus-color),
244
- 0 0 0 jkl.rem(1px) var(--jkl-text-input-focus-color);
245
- border-color: var(--jkl-text-input-focus-color);
246
191
  }
247
192
 
248
- &[data-invalid="true"] {
249
- background-color: var(--jkl-text-input-error-background-color);
250
- color: var(--jkl-text-input-error-text-color);
193
+ &:has(.jkl-text-input__input:focus-visible),
194
+ &:has(.jkl-text-area__text-area:focus-visible) {
195
+ @include jkl.focus-outline;
196
+ }
197
+
198
+ > .jkl-icon-button:focus-visible {
199
+ @include jkl.focus-outline($offset: -8px);
200
+ }
201
+
202
+ > .jkl-text-input-action-button {
203
+ flex-shrink: 0;
204
+ display: flex;
205
+ box-sizing: border-box;
206
+ align-items: center;
207
+ justify-content: center;
208
+ padding: var(--jkl-text-input-action-button-padding);
209
+ height: var(--jkl-text-input-action-button-size);
210
+ width: var(--jkl-text-input-action-button-size);
211
+
212
+ // Unngå for langt mellomrom mellom ikon og teksten i feltet
213
+ margin-inline-start: calc(
214
+ var(--jkl-text-input-horizontal-padding) * -1
215
+ );
216
+
217
+ .jkl-icon-button__icon {
218
+ height: var(--jkl-text-input-action-button-icon-size);
219
+ width: var(--jkl-text-input-action-button-icon-size);
220
+ }
221
+
222
+ &:hover {
223
+ color: var(--jkl-text-input-focus-color);
224
+
225
+ @include jkl.forced-colors-mode {
226
+ border: jkl.rem(2px) inset ButtonText;
227
+ }
228
+ }
229
+
230
+ @include jkl.forced-colors-mode {
231
+ border: revert;
232
+ background-color: revert;
233
+ }
234
+
235
+ @include jkl.forced-colors-svg-fallback($stroke: ButtonText);
251
236
  }
252
237
  }
253
238
 
@@ -195,14 +195,14 @@
195
195
 
196
196
  .jkl-toast[data-animation=entering],
197
197
  .jkl-toast[data-animation=queued] {
198
- animation: jkl-entering-u605vvb 200ms ease-out forwards;
198
+ animation: jkl-entering-uhtkh4w 200ms ease-out forwards;
199
199
  }
200
200
 
201
201
  .jkl-toast[data-animation=exiting] {
202
- animation: jkl-exiting-u605vvc 150ms ease-in forwards;
202
+ animation: jkl-exiting-uhtkh5f 150ms ease-in forwards;
203
203
  }
204
204
 
205
- @keyframes jkl-entering-u605vvb {
205
+ @keyframes jkl-entering-uhtkh4w {
206
206
  from {
207
207
  opacity: 0;
208
208
  transform: translate3d(0, 50%, 0);
@@ -212,7 +212,7 @@
212
212
  transform: translate3d(0, 0, 0);
213
213
  }
214
214
  }
215
- @keyframes jkl-exiting-u605vvc {
215
+ @keyframes jkl-exiting-uhtkh5f {
216
216
  from {
217
217
  opacity: 1;
218
218
  transform: translate3d(0, 0, 0);
@@ -1 +1 @@
1
- :root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-toast-padding:1rem}@media (width >= 0) and (max-width:679px){:root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-toast-padding:0.75rem}}[data-density=compact],[data-layout-density=compact]{--jkl-toast-padding:0.5rem}.jkl-toast-region{background:transparent;bottom:1.5rem;display:flex;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;width:100%;z-index:10000}.jkl-toast-region__toasts{align-items:center;display:flex;flex-direction:column;gap:1rem;min-width:18rem;pointer-events:auto}.jkl-toast-region--left{justify-content:flex-start;left:1.5rem}.jkl-toast{--background-color:var(--jkl-color-background-container-high);--text-color:var(--jkl-color-text-default);align-items:start;background-color:var(--background-color);border-radius:4px;box-sizing:border-box;color:var(--text-color);display:grid;font-size:1.125rem;font-weight:400;line-height:1.75rem;max-width:min(30rem,85vw);overflow:hidden;padding:var(--jkl-toast-padding);padding-top:0;width:100%;--jkl-icon-weight:300}@media (min-width:680px){.jkl-toast{font-size:1.25rem;font-weight:400;line-height:2rem;--jkl-icon-weight:300}}@media (width >= 0) and (max-width:679px){.jkl-toast{grid-template-areas:"progress progress" "icon dismiss" "content content"}}@media (min-width:680px){.jkl-toast{grid-template-areas:"progress progress progress" "icon content dismiss";grid-template-columns:auto 1fr auto}}.jkl-toast__progress{grid-area:progress;margin-bottom:1rem;margin-inline:calc(var(--jkl-toast-padding)*-1)}.jkl-toast__progress .jkl-countdown{--bar-color:var(--text-color);--track-color:transparent;border-radius:0}.jkl-toast__icon{grid-area:icon;margin-right:1rem;width:1.5rem}@media screen and (forced-colors:active){.jkl-toast__icon,.jkl-toast__icon path,.jkl-toast__icon svg{stroke:CanvasText}}.jkl-toast__content{grid-area:content}.jkl-toast__message{margin-top:-.125rem}.jkl-toast__title{font-size:1.125rem;font-weight:700;line-height:1.5rem;margin:0 0 .25rem;--jkl-icon-weight:500}@media (min-width:680px){.jkl-toast__title{font-size:1.3125rem;font-weight:700;line-height:1.75rem;--jkl-icon-weight:500}}.jkl-toast__title~.jkl-toast__message{margin-top:0}.jkl-toast__dismiss-button{background-color:transparent;color:inherit;cursor:pointer;grid-area:dismiss;justify-self:end;margin-left:var(--jkl-toast-gap);padding:0;position:relative}@media screen and (forced-colors:active){.jkl-toast__dismiss-button,.jkl-toast__dismiss-button path,.jkl-toast__dismiss-button svg{stroke:ButtonText}.jkl-toast__dismiss-button{background-color:ButtonFace}}.jkl-toast__dismiss-button:after{--tap-increment:-0.75rem;border-radius:.1875rem;content:"";inset:var(--tap-increment) var(--tap-increment) var(--tap-increment) var(--tap-increment);position:absolute}.jkl-toast--error,.jkl-toast--info,.jkl-toast--success,.jkl-toast--warning{--text-color:var(--jkl-color-text-on-alert)}.jkl-toast--info{--background-color:var(--jkl-color-background-alert-info)}.jkl-toast--warning{--background-color:var(--jkl-color-background-alert-warning)}.jkl-toast--error{--background-color:var(--jkl-color-background-alert-error)}.jkl-toast--success{--background-color:var(--jkl-color-background-alert-success)}@media screen and (forced-colors:active){.jkl-toast{border:2px solid CanvasText}.jkl-toast--info{border-style:dotted}.jkl-toast--warning{border-style:dashed}.jkl-toast--error{border-style:double;border-width:4px}}.jkl-toast[data-animation=entering],.jkl-toast[data-animation=queued]{animation:jkl-entering-u605vvb .2s ease-out forwards}.jkl-toast[data-animation=exiting]{animation:jkl-exiting-u605vvc .15s ease-in forwards}@keyframes jkl-entering-u605vvb{0%{opacity:0;transform:translate3d(0,50%,0)}to{opacity:1;transform:translateZ(0)}}@keyframes jkl-exiting-u605vvc{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,50%,0)}}
1
+ :root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-toast-padding:1rem}@media (width >= 0) and (max-width:679px){:root,[data-density=comfortable],[data-layout-density=comfortable]{--jkl-toast-padding:0.75rem}}[data-density=compact],[data-layout-density=compact]{--jkl-toast-padding:0.5rem}.jkl-toast-region{background:transparent;bottom:1.5rem;display:flex;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;width:100%;z-index:10000}.jkl-toast-region__toasts{align-items:center;display:flex;flex-direction:column;gap:1rem;min-width:18rem;pointer-events:auto}.jkl-toast-region--left{justify-content:flex-start;left:1.5rem}.jkl-toast{--background-color:var(--jkl-color-background-container-high);--text-color:var(--jkl-color-text-default);align-items:start;background-color:var(--background-color);border-radius:4px;box-sizing:border-box;color:var(--text-color);display:grid;font-size:1.125rem;font-weight:400;line-height:1.75rem;max-width:min(30rem,85vw);overflow:hidden;padding:var(--jkl-toast-padding);padding-top:0;width:100%;--jkl-icon-weight:300}@media (min-width:680px){.jkl-toast{font-size:1.25rem;font-weight:400;line-height:2rem;--jkl-icon-weight:300}}@media (width >= 0) and (max-width:679px){.jkl-toast{grid-template-areas:"progress progress" "icon dismiss" "content content"}}@media (min-width:680px){.jkl-toast{grid-template-areas:"progress progress progress" "icon content dismiss";grid-template-columns:auto 1fr auto}}.jkl-toast__progress{grid-area:progress;margin-bottom:1rem;margin-inline:calc(var(--jkl-toast-padding)*-1)}.jkl-toast__progress .jkl-countdown{--bar-color:var(--text-color);--track-color:transparent;border-radius:0}.jkl-toast__icon{grid-area:icon;margin-right:1rem;width:1.5rem}@media screen and (forced-colors:active){.jkl-toast__icon,.jkl-toast__icon path,.jkl-toast__icon svg{stroke:CanvasText}}.jkl-toast__content{grid-area:content}.jkl-toast__message{margin-top:-.125rem}.jkl-toast__title{font-size:1.125rem;font-weight:700;line-height:1.5rem;margin:0 0 .25rem;--jkl-icon-weight:500}@media (min-width:680px){.jkl-toast__title{font-size:1.3125rem;font-weight:700;line-height:1.75rem;--jkl-icon-weight:500}}.jkl-toast__title~.jkl-toast__message{margin-top:0}.jkl-toast__dismiss-button{background-color:transparent;color:inherit;cursor:pointer;grid-area:dismiss;justify-self:end;margin-left:var(--jkl-toast-gap);padding:0;position:relative}@media screen and (forced-colors:active){.jkl-toast__dismiss-button,.jkl-toast__dismiss-button path,.jkl-toast__dismiss-button svg{stroke:ButtonText}.jkl-toast__dismiss-button{background-color:ButtonFace}}.jkl-toast__dismiss-button:after{--tap-increment:-0.75rem;border-radius:.1875rem;content:"";inset:var(--tap-increment) var(--tap-increment) var(--tap-increment) var(--tap-increment);position:absolute}.jkl-toast--error,.jkl-toast--info,.jkl-toast--success,.jkl-toast--warning{--text-color:var(--jkl-color-text-on-alert)}.jkl-toast--info{--background-color:var(--jkl-color-background-alert-info)}.jkl-toast--warning{--background-color:var(--jkl-color-background-alert-warning)}.jkl-toast--error{--background-color:var(--jkl-color-background-alert-error)}.jkl-toast--success{--background-color:var(--jkl-color-background-alert-success)}@media screen and (forced-colors:active){.jkl-toast{border:2px solid CanvasText}.jkl-toast--info{border-style:dotted}.jkl-toast--warning{border-style:dashed}.jkl-toast--error{border-style:double;border-width:4px}}.jkl-toast[data-animation=entering],.jkl-toast[data-animation=queued]{animation:jkl-entering-uhtkh4w .2s ease-out forwards}.jkl-toast[data-animation=exiting]{animation:jkl-exiting-uhtkh5f .15s ease-in forwards}@keyframes jkl-entering-uhtkh4w{0%{opacity:0;transform:translate3d(0,50%,0)}to{opacity:1;transform:translateZ(0)}}@keyframes jkl-exiting-uhtkh5f{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,50%,0)}}
@@ -270,8 +270,8 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-toggle-slider:
270
270
  }
271
271
  }
272
272
  .jkl-toggle-switch:focus-visible .jkl-toggle-switch-widget {
273
- outline: 2px solid var(--jkl-color-border-action);
274
- outline-offset: 2px;
273
+ outline: 3px solid var(--jkl-color-border-action);
274
+ outline-offset: 3px;
275
275
  }
276
276
  .jkl-toggle-switch-widget__slider {
277
277
  position: relative;