@geoffcox/sterling-svelte-themes 2.0.2 → 2.0.4

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 (51) hide show
  1. package/README.md +21 -0
  2. package/css/sterling/Autocomplete.base.css +2 -2
  3. package/css/sterling/Button.base.css +2 -2
  4. package/css/sterling/Button.colors.css +36 -36
  5. package/css/sterling/Button.disabled.css +4 -20
  6. package/css/sterling/Button.secondary.colors.css +36 -36
  7. package/css/sterling/Button.tool.colors.css +24 -24
  8. package/css/sterling/Callout.base.css +4 -4
  9. package/css/sterling/Checkbox.base.css +9 -6
  10. package/css/sterling/Checkbox.disabled.css +11 -21
  11. package/css/sterling/Dialog.base.css +3 -2
  12. package/css/sterling/Dropdown.base.css +6 -6
  13. package/css/sterling/Dropdown.disabled.css +4 -25
  14. package/css/sterling/Input.base.css +1 -9
  15. package/css/sterling/Input.disabled.css +5 -34
  16. package/css/sterling/Label.base.css +12 -6
  17. package/css/sterling/Label.boxed.css +6 -2
  18. package/css/sterling/List.base.css +3 -25
  19. package/css/sterling/List.disabled.css +4 -4
  20. package/css/sterling/ListItem.disabled.css +7 -23
  21. package/css/sterling/Menu.base.css +2 -2
  22. package/css/sterling/MenuItem.base.css +3 -18
  23. package/css/sterling/MenuItem.css +1 -1
  24. package/css/sterling/MenuItem.defaultItem.css +1 -1
  25. package/css/sterling/MenuItem.disabled.css +6 -0
  26. package/css/sterling/MenuSeparator.base.css +1 -1
  27. package/css/sterling/Pagination.button.css +1 -1
  28. package/css/sterling/Pagination.input.css +3 -3
  29. package/css/sterling/Popover.css +1 -0
  30. package/css/sterling/Progress.base.css +1 -1
  31. package/css/sterling/Progress.css +0 -1
  32. package/css/sterling/Radio.base.css +2 -2
  33. package/css/sterling/Radio.disabled.css +12 -22
  34. package/css/sterling/Select.base.css +6 -6
  35. package/css/sterling/Select.disabled.css +5 -22
  36. package/css/sterling/Slider.base.css +45 -13
  37. package/css/sterling/Slider.disabled.css +8 -23
  38. package/css/sterling/Switch.base.css +15 -14
  39. package/css/sterling/Switch.disabled.css +15 -26
  40. package/css/sterling/Tab.base.css +5 -5
  41. package/css/sterling/Tab.disabled.css +5 -30
  42. package/css/sterling/TabList.base.css +1 -1
  43. package/css/sterling/TextArea.base.css +4 -4
  44. package/css/sterling/TextArea.disabled.css +5 -26
  45. package/css/sterling/Tree.base.css +4 -4
  46. package/css/sterling/Tree.disabled.css +5 -26
  47. package/css/sterling/TreeItem.disabled.css +4 -29
  48. package/css/sterling/vars.css +53 -46
  49. package/package.json +1 -1
  50. package/css/sterling/MenuItem.defaultItem.disabled.css +0 -28
  51. package/css/sterling/Progress.disabled.css +0 -17
@@ -13,7 +13,7 @@
13
13
  border-bottom-color: var(--stsv-input__border-color);
14
14
  border-radius: 3px;
15
15
  border-style: solid;
16
- border-width: 2px;
16
+ border-width: var(--stsv-input__border-width);
17
17
  box-sizing: border-box;
18
18
  color: var(--stsv-input__color);
19
19
  display: block;
@@ -41,14 +41,6 @@
41
41
  color: var(--stsv-input__color--focus);
42
42
  }
43
43
 
44
- input:focus-visible {
45
- outline-color: var(--stsv-common__outline-color);
46
- outline-offset: 0;
47
- outline-style: solid;
48
- outline-width: 2px;
49
- outline: none;
50
- }
51
-
52
44
  /* ----- placeholder ----- */
53
45
 
54
46
  input::placeholder {
@@ -1,36 +1,7 @@
1
- .sterling-input.disabled * {
1
+ .sterling-input input:disabled {
2
2
  cursor: not-allowed;
3
3
  outline: none;
4
- }
5
-
6
- .sterling-input::after {
7
- content: '';
8
- position: absolute;
9
- left: 0;
10
- right: 0;
11
- top: 0;
12
- bottom: 0;
13
- background: repeating-linear-gradient(
14
- var(--stsv-common--disabled__stripe-angle),
15
- var(--stsv-common--disabled__stripe-color),
16
- var(--stsv-common--disabled__stripe-color) var(--stsv-common--disabled__stripe-width),
17
- var(--stsv-common--disabled__stripe-color--alt) var(--stsv-common--disabled__stripe-width),
18
- var(--stsv-common--disabled__stripe-color--alt)
19
- calc(2 * var(--stsv-common--disabled__stripe-width))
20
- );
21
- pointer-events: none;
22
- background: repeating-linear-gradient(
23
- var(--stsv-common--disabled__stripe-angle),
24
- var(--stsv-common--disabled__stripe-color),
25
- var(--stsv-common--disabled__stripe-color) var(--stsv-common--disabled__stripe-width),
26
- var(--stsv-common--disabled__stripe-color--alt) var(--stsv-common--disabled__stripe-width),
27
- var(--stsv-common--disabled__stripe-color--alt)
28
- calc(2 * var(--stsv-common--disabled__stripe-width))
29
- );
30
- opacity: 0;
31
- pointer-events: none;
32
- transition: opacity 250ms;
33
- }
34
- .sterling-input.disabled::after {
35
- opacity: 1;
36
- }
4
+ background-color: var(--stsv-input__background-color--disabled);
5
+ border-bottom-color: var(--stsv-input__border-color--disabled);
6
+ color: var(--stsv-input__color--disabled);
7
+ }
@@ -12,20 +12,23 @@
12
12
  overflow: visible;
13
13
  padding: 0;
14
14
  position: relative;
15
- transition: background-color 250ms, color 250ms, border-color 250ms;
15
+ transition:
16
+ background-color 250ms,
17
+ color 250ms,
18
+ border-color 250ms;
16
19
  }
17
20
 
18
21
  /* ----- horizontal | vertical ----- */
19
22
 
20
23
  .sterling-label:not(.vertical) {
21
- grid-template-columns: auto auto;
24
+ grid-template-columns: auto 1fr;
22
25
  grid-template-rows: auto auto;
23
- grid-template-areas: "text content" ". message";
26
+ grid-template-areas: 'text content' '. message';
24
27
  }
25
28
 
26
29
  .sterling-label.vertical {
27
30
  grid-template-rows: auto auto auto;
28
- grid-template-areas: "text" "content" "message";
31
+ grid-template-areas: 'text' 'content' 'message';
29
32
  }
30
33
 
31
34
  /* ----- text ----- */
@@ -46,7 +49,7 @@
46
49
  }
47
50
 
48
51
  .sterling-label .content {
49
- display: grid;
52
+ display: contents;
50
53
  grid-area: content;
51
54
  }
52
55
 
@@ -58,7 +61,10 @@
58
61
  grid-area: message;
59
62
  padding: 0.5em;
60
63
  width: 100%;
61
- transition: background-color 250ms, color 250ms, border-color 250ms;
64
+ transition:
65
+ background-color 250ms,
66
+ color 250ms,
67
+ border-color 250ms;
62
68
  }
63
69
 
64
70
  .sterling-label.info .message {
@@ -3,7 +3,11 @@
3
3
  border-color: var(--stsv-input__border-color);
4
4
  border-radius: 3px;
5
5
  border-style: solid;
6
- border-width: 2px;
6
+ border-width: var(--stsv-input__border-width);
7
+ }
8
+
9
+ .sterling-label.boxed:not(.vertical) {
10
+ grid-template-areas: 'text content' 'message message';
7
11
  }
8
12
 
9
13
  .sterling-label.boxed:not(.disabled):hover {
@@ -23,7 +27,7 @@
23
27
  outline-color: var(--stsv-common__outline-color);
24
28
  outline-offset: 0;
25
29
  outline-style: solid;
26
- outline-width: 2px;
30
+ outline-width: var(--stsv-common__outline-width);
27
31
  }
28
32
 
29
33
  .sterling-label.boxed .text {
@@ -3,7 +3,7 @@
3
3
  border-color: var(--stsv-input__border-color);
4
4
  border-radius: 3px;
5
5
  border-style: solid;
6
- border-width: 2px;
6
+ border-width: var(--stsv-input__border-width);
7
7
  box-sizing: border-box;
8
8
  color: var(--stsv-input__color);
9
9
  height: 100%;
@@ -12,7 +12,6 @@
12
12
  margin: 0;
13
13
  outline: none;
14
14
  padding: 0;
15
- position: relative;
16
15
  transition:
17
16
  background-color 250ms,
18
17
  color 250ms,
@@ -26,7 +25,7 @@
26
25
  width: 100%;
27
26
  }
28
27
 
29
- .sterling-list:hover {
28
+ .sterling-list:not(.disabled):hover {
30
29
  border-color: var(--stsv-input__border-color--hover);
31
30
  color: var(--stsv-input__color--hover);
32
31
  }
@@ -37,7 +36,7 @@
37
36
  outline-color: var(--stsv-common__outline-color);
38
37
  outline-offset: 0;
39
38
  outline-style: solid;
40
- outline-width: 2px;
39
+ outline-width: var(--stsv-common__outline-width);
41
40
  }
42
41
 
43
42
  /* ----- container - a layout panel that grows with the items ----- */
@@ -53,27 +52,6 @@
53
52
  flex-direction: row;
54
53
  }
55
54
 
56
- .sterling-list .container::after {
57
- background: repeating-linear-gradient(
58
- var(--stsv-common--disabled__stripe-angle),
59
- var(--stsv-common--disabled__stripe-color),
60
- var(--stsv-common--disabled__stripe-color) var(--stsv-common--disabled__stripe-width),
61
- var(--stsv-common--disabled__stripe-color--alt) var(--stsv-common--disabled__stripe-width),
62
- var(--stsv-common--disabled__stripe-color--alt)
63
- calc(2 * var(--stsv-common--disabled__stripe-width))
64
- );
65
- content: '';
66
- bottom: 0;
67
- left: 0;
68
- opacity: 0;
69
- position: absolute;
70
- right: 0;
71
- top: 0;
72
- height: 100%;
73
- pointer-events: none;
74
- transition: opacity 250ms;
75
- }
76
-
77
55
  /* ----- media queries ----- */
78
56
 
79
57
  @media (prefers-reduced-motion) {
@@ -1,7 +1,7 @@
1
- .sterling-list.disabled * {
1
+ .sterling-list.disabled {
2
+ background-color: var(--stsv-common__background-color--disabled);
3
+ border-color: var(--stsv-input__border-color--disabled);
4
+ color: var(--stsv-input__color--disabled);
2
5
  cursor: not-allowed;
3
6
  }
4
7
 
5
- .sterling-list.disabled .container::after {
6
- opacity: 1;
7
- }
@@ -1,28 +1,12 @@
1
1
  .sterling-list-item.disabled {
2
+ background-color: var(--stsv-common__background-color--disabled);
3
+ border-color: var(--stsv-input__border-color--disabled);
4
+ color: var(--stsv-input__color--disabled);
2
5
  cursor: not-allowed;
3
6
  outline: none;
4
7
  }
5
8
 
6
- .sterling-list-item::after {
7
- background: repeating-linear-gradient(
8
- var(--stsv-common--disabled__stripe-angle),
9
- var(--stsv-common--disabled__stripe-color),
10
- var(--stsv-common--disabled__stripe-color) var(--stsv-common--disabled__stripe-width),
11
- var(--stsv-common--disabled__stripe-color--alt) var(--stsv-common--disabled__stripe-width),
12
- var(--stsv-common--disabled__stripe-color--alt)
13
- calc(2 * var(--stsv-common--disabled__stripe-width))
14
- );
15
- bottom: 0;
16
- content: '';
17
- left: 0;
18
- opacity: 0;
19
- position: absolute;
20
- right: 0;
21
- top: 0;
22
- pointer-events: none;
23
- transition: opacity 250ms;
24
- }
25
-
26
- .sterling-list-item.item-disabled:not(.list-disabled)::after {
27
- opacity: 1;
28
- }
9
+ .sterling-list-item.disabled.selected {
10
+ background-color: var(--stsv-button__background-color--active);
11
+ color: var(--stsv-input__color--disabled);
12
+ }
@@ -3,9 +3,9 @@
3
3
  border-color: var(--stsv-common__border-color);
4
4
  border-radius: 0;
5
5
  border-style: solid;
6
- border-width: 2px;
7
- box-shadow: var(--stsv-common__box-shadow);
6
+ border-width: var(--stsv-common__border-width);
8
7
  box-sizing: border-box;
8
+ filter: var(--stsv-common__drop-shadow);
9
9
  display: grid;
10
10
  grid-template-columns: 1fr;
11
11
  grid-template-rows: 1fr;
@@ -1,10 +1,7 @@
1
1
  .sterling-menu-item {
2
2
  appearance: none;
3
3
  background-color: transparent;
4
- border-color: transparent;
5
- border-radius: 8px;
6
- border-style: none;
7
- border-width: 0;
4
+ border: none;
8
5
  box-sizing: border-box;
9
6
  color: var(--stsv-common__color);
10
7
  cursor: pointer;
@@ -21,24 +18,12 @@
21
18
  user-select: none;
22
19
  }
23
20
 
24
- .sterling-menu-item:hover {
21
+ .sterling-menu-item:not(:disabled):hover {
25
22
  background-color: var(--stsv-button__background-color--hover);
26
23
  color: var(--stsv-button__color--hover);
27
24
  }
28
25
 
29
- .sterling-menu-item:focus {
30
- outline: none;
31
- }
32
-
33
- .sterling-menu-item.using-keyboard:focus {
34
- border-color: var(--stsv-button__border-color--focus);
35
- outline-color: var(--stsv-common__outline-color);
36
- outline-offset: 0;
37
- outline-style: solid;
38
- outline-width: 2px;
39
- }
40
-
41
- .sterling-menu-item:focus {
26
+ .sterling-menu-item:not(:disabled):focus {
42
27
  background-color: var(--stsv-input__background-color--selected);
43
28
  }
44
29
 
@@ -1,3 +1,3 @@
1
1
  @import url('./MenuItem.base.css');
2
2
  @import url('./MenuItem.defaultItem.css');
3
- @import url('./MenuItem.defaultItem.disabled.css');
3
+ @import url('./MenuItem.disabled.css');
@@ -23,7 +23,7 @@
23
23
  .sterling-menu-item-display .check.checkmark.checked::after {
24
24
  border-color: currentColor;
25
25
  border-style: solid;
26
- border-width: 0 0.2em 0.2em 0;
26
+ border-width: 0 3px 3px 0;
27
27
  box-sizing: border-box;
28
28
  content: "";
29
29
  height: 0.8em;
@@ -0,0 +1,6 @@
1
+ .sterling-menu-item:disabled {
2
+ cursor: not-allowed;
3
+ outline: none;
4
+ background-color: transparent;
5
+ color: var(--stsv-common__color--disabled);
6
+ }
@@ -1,5 +1,5 @@
1
1
  .sterling-menu-separator {
2
- height: 2px;
2
+ height: var(--stsv-common__border-width);
3
3
  background-color: var(--stsv-common__border-color);
4
4
  margin: 0.1em 0;
5
5
  }
@@ -6,7 +6,7 @@
6
6
  border-color: transparent;
7
7
  border-radius: 0;
8
8
  border-style: solid;
9
- border-width: 2px;
9
+ border-width: var(--stsv-button__border-width);
10
10
  box-sizing: border-box;
11
11
  color: var(--stsv-button__color);
12
12
  cursor: pointer;
@@ -5,7 +5,7 @@
5
5
  border-bottom-color: var(--stsv-input__border-color);
6
6
  border-radius: 3px;
7
7
  border-style: solid;
8
- border-width: 2px;
8
+ border-width: var(--stsv-input__border-width);
9
9
  box-sizing: border-box;
10
10
  color: var(--stsv-input__color);
11
11
  display: block;
@@ -23,7 +23,7 @@
23
23
  min-width: calc(var(--page-number-width, 1ch) + 1em);
24
24
  }
25
25
 
26
- .sterling-pagination input:not(:disabled) {
26
+ .sterling-pagination input:not(:disabled):hover {
27
27
  background-color: var(--stsv-input__background-color--hover);
28
28
  border-bottom-color: var(--stsv-input__border-color--hover);
29
29
  color: var(--stsv-input__color--hover);
@@ -40,7 +40,7 @@
40
40
  outline-color: var(--stsv-common__outline-color);
41
41
  outline-offset: 0;
42
42
  outline-style: solid;
43
- outline-width: 2px;
43
+ outline-width: var(--stsv-common__outline-width);
44
44
  outline: none;
45
45
  }
46
46
  @media (prefers-reduced-motion) {
@@ -14,6 +14,7 @@
14
14
  position: absolute;
15
15
  top: 0;
16
16
  width: max-content;
17
+
17
18
  }
18
19
 
19
20
  .sterling-popover.open {
@@ -2,7 +2,7 @@
2
2
  align-content: flex-start;
3
3
  align-items: flex-start;
4
4
  background: var(--stsv-common__background-color);
5
- border-width: 2px;
5
+ border-width: var(--stsv-common__border-width);
6
6
  border-style: solid;
7
7
  border-color: var(--stsv-common__border-color);
8
8
  border-radius: 0;
@@ -1,2 +1 @@
1
1
  @import url('./Progress.base.css');
2
- @import url('./Progress.disabled.css');
@@ -46,7 +46,7 @@
46
46
  background-color: var(--stsv-input__background-color);
47
47
  border-color: var(--stsv-input__border-color);
48
48
  border-style: solid;
49
- border-width: 2px;
49
+ border-width: var(--stsv-input__border-width);
50
50
  border-radius: 10000px;
51
51
  box-sizing: border-box;
52
52
  display: inline-block;
@@ -74,7 +74,7 @@
74
74
  outline-color: var(--stsv-common__outline-color);
75
75
  outline-offset: 0;
76
76
  outline-style: solid;
77
- outline-width: 2px;
77
+ outline-width: var(--stsv-common__outline-width);
78
78
  }
79
79
 
80
80
  .sterling-radio .indicator::after {
@@ -1,28 +1,18 @@
1
- .sterling-radio.disabled * {
1
+ .sterling-radio.disabled,
2
+ .sterling-radio.disabled input,
3
+ .sterling-radio.disabled > label {
2
4
  cursor: not-allowed;
3
5
  }
4
6
 
5
- .sterling-radio .container::after {
6
- background: repeating-linear-gradient(
7
- var(--stsv-common--disabled__stripe-angle),
8
- var(--stsv-common--disabled__stripe-color),
9
- var(--stsv-common--disabled__stripe-color) var(--stsv-common--disabled__stripe-width),
10
- var(--stsv-common--disabled__stripe-color--alt) var(--stsv-common--disabled__stripe-width),
11
- var(--stsv-common--disabled__stripe-color--alt)
12
- calc(2 * var(--stsv-common--disabled__stripe-width))
13
- );
14
- border-radius: 10000px;
15
- bottom: 0;
16
- content: '';
17
- left: 0;
18
- opacity: 0;
19
- position: absolute;
20
- right: 0;
21
- top: 0;
22
- pointer-events: none;
23
- transition: opacity 250ms;
7
+ .sterling-radio.disabled .indicator {
8
+ background-color: var(--stsv-input__background-color--disabled);
9
+ border-color: var(--stsv-input__border-color--disabled);
24
10
  }
25
11
 
26
- .sterling-radio.disabled .container::after {
27
- opacity: 1;
12
+ .sterling-radio.disabled .indicator::after {
13
+ border-color: var(--stsv-input__color--disabled);
14
+ }
15
+
16
+ .sterling-radio.disabled > label {
17
+ color: var(--stsv-common__color--disabled);
28
18
  }
@@ -5,7 +5,7 @@
5
5
  border-color: var(--stsv-input__border-color);
6
6
  border-radius: 3px;
7
7
  border-style: solid;
8
- border-width: 2px;
8
+ border-width: var(--stsv-input__border-width);
9
9
  color: var(--stsv-input__color);
10
10
  cursor: pointer;
11
11
  display: grid;
@@ -20,20 +20,20 @@
20
20
  border-color 250ms;
21
21
  }
22
22
 
23
- .sterling-select:hover {
23
+ .sterling-select:not(.disabled):hover {
24
24
  background-color: var(--stsv-input__background-color--hover);
25
25
  border-color: var(--stsv-input__border-color--hover);
26
26
  color: var(--stsv-input__color--hover);
27
27
  }
28
28
 
29
- .sterling-select:focus {
29
+ .sterling-select:not(.disabled):focus-visible {
30
30
  background-color: var(--stsv-input__background-color--focus);
31
31
  border-color: var(--stsv-input__border-color--focus);
32
32
  color: var(--stsv-input__color--focus);
33
33
  outline-color: var(--stsv-common__outline-color);
34
34
  outline-offset: 0;
35
35
  outline-style: solid;
36
- outline-width: 2px;
36
+ outline-width: var(--stsv-common__outline-width);
37
37
  }
38
38
 
39
39
  .sterling-select .value {
@@ -84,8 +84,8 @@
84
84
  border-color: var(--stsv-common__border-color);
85
85
  border-radius: 0;
86
86
  border-style: solid;
87
- border-width: 2px;
88
- box-shadow: var(--stsv-common__box-shadow);
87
+ border-width: var(--stsv-common__border-width);
88
+ filter: var(--stsv-common__drop-shadow);
89
89
  padding: 0.25em;
90
90
  display: grid;
91
91
  grid-template-columns: 1fr;
@@ -1,28 +1,11 @@
1
1
  .sterling-select.disabled {
2
+ background-color: var(--stsv-input__background-color--disabled);
3
+ border-color: var(--stsv-input__border-color--disabled);
4
+ color: var(--stsv-input__color--disabled);
2
5
  cursor: not-allowed;
3
6
  outline: none;
4
7
  }
5
8
 
6
- .sterling-select::after {
7
- background: repeating-linear-gradient(
8
- var(--stsv-common--disabled__stripe-angle),
9
- var(--stsv-common--disabled__stripe-color),
10
- var(--stsv-common--disabled__stripe-color) var(--stsv-common--disabled__stripe-width),
11
- var(--stsv-common--disabled__stripe-color--alt) var(--stsv-common--disabled__stripe-width),
12
- var(--stsv-common--disabled__stripe-color--alt)
13
- calc(2 * var(--stsv-common--disabled__stripe-width))
14
- );
15
- bottom: 0;
16
- content: '';
17
- left: 0;
18
- opacity: 0;
19
- position: absolute;
20
- right: 0;
21
- top: 0;
22
- pointer-events: none;
23
- transition: opacity 250ms;
24
- }
25
-
26
- .sterling-select.disabled::after {
27
- opacity: 1;
9
+ .sterling-slider.disabled .fill {
10
+ background: var(--stsv-common__color--disabled);
28
11
  }
@@ -61,13 +61,6 @@
61
61
  width: 3px;
62
62
  }
63
63
 
64
- .sterling-slider:focus-visible {
65
- outline-color: var(--stsv-common__outline-color);
66
- outline-offset: 0;
67
- outline-style: solid;
68
- outline-width: 2px;
69
- }
70
-
71
64
  /* ----- fill ----- */
72
65
 
73
66
  .sterling-slider .fill {
@@ -83,13 +76,30 @@
83
76
  height: 3px;
84
77
  top: 50%;
85
78
  transform: translate(0, -50%);
79
+ width: var(--valueOffset);
80
+ }
81
+
82
+ .sterling-slider.horizontal:not(.reverse) .fill {
83
+ left: 0;
84
+ }
85
+
86
+ .sterling-slider.horizontal.reverse .fill {
87
+ right: 0;
86
88
  }
87
89
 
88
90
  .sterling-slider.vertical .fill {
89
- bottom: 0;
90
91
  left: 50%;
91
92
  transform: translate(-50%, 0);
92
93
  width: 3px;
94
+ height: var(--valueOffset);
95
+ }
96
+
97
+ .sterling-slider.vertical:not(.reverse) .fill {
98
+ bottom: 0;
99
+ }
100
+
101
+ .sterling-slider.vertical.reverse .fill {
102
+ top: 0;
93
103
  }
94
104
 
95
105
  /* ----- thumb ----- */
@@ -99,7 +109,7 @@
99
109
  border-color: var(--stsv-button__border-color);
100
110
  border-radius: 10000px;
101
111
  border-style: solid;
102
- border-width: 2px;
112
+ border-width: var(--stsv-button__border-width);
103
113
  box-sizing: border-box;
104
114
  color: var(--stsv-button__color);
105
115
  cursor: pointer;
@@ -107,6 +117,7 @@
107
117
  font: inherit;
108
118
  height: 1.5em;
109
119
  overflow: hidden;
120
+ outline: none;
110
121
  padding: 0;
111
122
  text-decoration: none;
112
123
  transition:
@@ -118,28 +129,49 @@
118
129
  width: 1.5em;
119
130
  }
120
131
 
121
- .sterling-slider.horizontal .thumb {
132
+ .sterling-slider.horizontal:not(.reverse) .thumb {
122
133
  top: 50%;
123
134
  transform: translate(-50%, -50%);
135
+ left: var(--valueOffset);
136
+ }
137
+
138
+ .sterling-slider.horizontal.reverse .thumb {
139
+ top: 50%;
140
+ transform: translate(50%, -50%);
141
+ right: var(--valueOffset);
124
142
  }
125
143
 
126
- .sterling-slider.vertical .thumb {
144
+ .sterling-slider.vertical:not(.reverse) .thumb {
127
145
  left: 50%;
128
146
  transform: translate(-50%, 50%);
147
+ bottom: var(--valueOffset);
129
148
  }
130
149
 
131
- .thumb:hover {
150
+ .sterling-slider.vertical.reverse .thumb {
151
+ left: 50%;
152
+ transform: translate(-50%, -50%);
153
+ top: var(--valueOffset);
154
+ }
155
+
156
+ .sterling-slider:not(.disabled) .thumb:hover {
132
157
  background-color: var(--stsv-button__background-color--hover);
133
158
  border-color: var(--stsv-button__border-color--hover);
134
159
  color: var(--stsv-button__color--hover);
135
160
  }
136
161
 
137
- .thumb:active {
162
+ .sterling-slider:not(.disabled) .thumb:active {
138
163
  background-color: var(--stsv-button__background-color--active);
139
164
  border-color: var(--stsv-button__border-color--active);
140
165
  color: var(--stsv-button__color--active);
141
166
  }
142
167
 
168
+ .sterling-slider:not(.disabled).using-keyboard:focus-visible .thumb {
169
+ outline-color: var(--stsv-common__outline-color);
170
+ outline-offset: 0;
171
+ outline-style: solid;
172
+ outline-width: var(--stsv-common__outline-width);
173
+ }
174
+
143
175
  /* ----- reduced motion ----- */
144
176
 
145
177
  @media (prefers-reduced-motion) {